• iOS 获取键盘高度


    - (void)viewDidLoad {

        [super viewDidLoad];

        //增加监听,当键盘出现或改变时收出消息

        [[NSNotificationCenter defaultCenter] addObserver:self

                                                 selector:@selector(keyboardWillShow:)

                                                     name:UIKeyboardWillShowNotification

                                                   object:nil];

        

        //增加监听,当键退出时收出消息

        [[NSNotificationCenter defaultCenter] addObserver:self

                                                 selector:@selector(keyboardWillHide:)

                                                     name:UIKeyboardWillHideNotification

                                                   object:nil];

    }

    - (void)keyboardWillShow:(NSNotification *)aNotification

    {

        //获取键盘的高度

        /*

         iphone 6:

         中文

         2014-12-31 11:16:23.643 Demo[686:41289] 键盘高度是  258

         2014-12-31 11:16:23.644 Demo[686:41289] 键盘宽度是  375

         英文

         2014-12-31 11:55:21.417 Demo[1102:58972] 键盘高度是  216

         2014-12-31 11:55:21.417 Demo[1102:58972] 键盘宽度是  375

         

         iphone  6 plus:

         英文:

         2014-12-31 11:31:14.669 Demo[928:50593] 键盘高度是  226

         2014-12-31 11:31:14.669 Demo[928:50593] 键盘宽度是  414

         中文:

         2015-01-07 09:22:49.438 Demo[622:14908] 键盘高度是  271

         2015-01-07 09:22:49.439 Demo[622:14908] 键盘宽度是  414

         

         iphone 5 :

         2014-12-31 11:19:36.452 Demo[755:43233] 键盘高度是  216

         2014-12-31 11:19:36.452 Demo[755:43233] 键盘宽度是  320

         

         ipad Air:

         2014-12-31 11:28:32.178 Demo[851:48085] 键盘高度是  264

         2014-12-31 11:28:32.178 Demo[851:48085] 键盘宽度是  768

         

         ipad2 :

         2014-12-31 11:33:57.258 Demo[1014:53043] 键盘高度是  264

         2014-12-31 11:33:57.258 Demo[1014:53043] 键盘宽度是  768

         */

        NSDictionary *userInfo = [aNotification userInfo];

        NSValue *aValue = [userInfo objectForKey:UIKeyboardFrameEndUserInfoKey];

        CGRect keyboardRect = [aValue CGRectValue];

        int height = keyboardRect.size.height;

        int width = keyboardRect.size.width;

        NSLog(@"键盘高度是  %d",height);

        NSLog(@"键盘宽度是  %d",width); 

    }

    //当键退出时调用

    - (void)keyboardWillHide:(NSNotification *)aNotification

    {

    }

  • 相关阅读:
    ChaosBlade x SkyWalking 微服务高可用实践
    工商银行基于 Dubbo 构建金融微服务架构的实践-服务发现篇
    阿里 双11 同款流控降级组件 Sentinel Go 正式 GA,助力云原生服务稳稳稳
    我在阿里巴巴做 Serverless 云研发平台
    「更高更快更稳」,看阿里巴巴如何修炼容器服务「内外功」
    「云原生上云」后的聚石塔是如何应对 双11 下大规模应用挑战的
    从零入门 Serverless | SAE 的远程调试和云端联调
    利用 Arthas 解决启动 StandbyNameNode 加载 EditLog 慢的问题
    Arthas 实践——生产环境排查 CPU 飚高问题
    RocketMQ 很慢?引出了一个未解之谜
  • 原文地址:https://www.cnblogs.com/-ios/p/5726188.html
Copyright © 2020-2023  润新知