zoukankan      html  css  js  c++  java
  • 键盘上附加工具栏

    m_listView:textview在tableview上,同时需要修改tableview高度 

    //注册观察者

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboarWillShow:) name:UIKeyboardWillShowNotification object:nil];

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillBeHidden:) name:UIKeyboardWillHideNotification object:nil];

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboarWillShow:) name:UIKeyboardWillChangeFrameNotification object:nil];

    //显示附加工具栏

    -(void)keyboarWillShow:(NSNotification*)obj{

    //获取键盘的高度

        NSDictionary *userInfo = [obj userInfo];

        NSValue *aValue = [userInfo objectForKey:UIKeyboardFrameEndUserInfoKey];

        CGRect keyboardRect = [aValue CGRectValue];

        int height = keyboardRect.size.height;

    [UIView animateWithDuration:0.2f animations:^(){

    [m_listView setFrame:CGRectMake(0, [Utility getNavBarHight], ScreenWidth, ScreenHeight - [Utility getNavBarHight] - 50 - height)];

    [menuView setFrame:CGRectMake(0, ScreenHeight - 50-height, m_listView.frame.size.width, 50)];

    }];

    [m_listView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:m_listView.curText.tag inSection:0] atScrollPosition:UITableViewScrollPositionNone animated:YES];

    }

    -(void)keyboardWillBeHidden:(NSNotification*)obj{

    [UIView animateWithDuration:0.3f animations:^(){

    [m_listView setFrame:CGRectMake(0, [Utility getNavBarHight], ScreenWidth, ScreenHeight - [Utility getNavBarHight] - 50)];

    [menuView setFrame:CGRectMake(0, m_listView.frame.origin.y+ m_listView.frame.size.height, m_listView.frame.size.width, 50)];

    }];

    }

  • 相关阅读:
    【C-数据类型 常量 变量】
    【OC简介-类和对象】
    【ios面试总结】
    【OC基础语法考试】
    【C-01关键字】
    UI3
    ui2
    UI
    C++使用shell命令
    字典
  • 原文地址:https://www.cnblogs.com/ldc529/p/3832260.html
Copyright © 2011-2022 走看看