zoukankan      html  css  js  c++  java
  • ios开发之--键盘的监听

    监听键盘的弹出,让整个页面向上移动,比较简单,仅做记录使用:

    代码如下:

     // 监听键盘
        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShowAction:) name:UIKeyboardWillShowNotification object:nil];
    
        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHideAction:) name:UIKeyboardWillHideNotification object:nil];

    键盘处理:

    #pragma mark - 键盘处理
    
    /**
     *  键盘即将隐藏
     */
    - (void)keyboardWillHideAction:(NSNotification *)note
    {
        
        // 1.键盘弹出需要的时间
        CGFloat duration = [note.userInfo[UIKeyboardAnimationDurationUserInfoKey] doubleValue];
        
        // 2.动画
        [UIView animateWithDuration:duration animations:^{
            self.view.transform = CGAffineTransformIdentity;
        }];
    }
    
    /**
     *  键盘即将弹出
     */
    - (void)keyboardWillShowAction:(NSNotification *)note
    {
        
        // 1.键盘弹出需要的时间
        CGFloat duration = [note.userInfo[UIKeyboardAnimationDurationUserInfoKey] doubleValue];
        
        // 2.动画
        [UIView animateWithDuration:duration animations:^{
            // 取出键盘高度
            CGRect keyboardF = [note.userInfo[UIKeyboardFrameEndUserInfoKey] CGRectValue];
            CGFloat keyboardH = keyboardF.size.height - 40;
            if (_ThreeInch) {
                self.view.transform = CGAffineTransformMakeTranslation(0, - keyboardH);
            } else {
                self.view.transform = CGAffineTransformMakeTranslation(0, - 50);
            }
        }];
    }
  • 相关阅读:
    C# 在代码中创建 DataTable 和从数据库取出的数据 DataTable
    C#编程数据库操作之DataTable
    测试代码的运行时间(C#)
    时间天数 的使用
    遍历panel 上的控件,然后操作
    break 和 continue区别
    DataTable排序的一般方法
    MG758 GIS数据采集终端
    C#中DataTable
    android InputStream相关类
  • 原文地址:https://www.cnblogs.com/hero11223/p/7161850.html
Copyright © 2011-2022 走看看