监听键盘事件

通常通过以下方法监听键盘事件

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

- (void)keyboardChange:(NSNotification*)aNotification{
    NSDictionary* userInfo = [aNotification userInfo];
    NSTimeInterval animationDuration = [[userInfo objectForKey:UIKeyboardAnimationDurationUserInfoKey] doubleValue];
    UIViewAnimationCurve animationCurve = [[userInfo objectForKey:UIKeyboardAnimationCurveUserInfoKey] intValue];
    CGRect keyboardEndFrame = [[userInfo objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue];
    CGFloat keyboardY =  keyboardEndFrame.origin.y;
    
    CGFloat height = SCREEN_HEIGHT-keyboardY;
    BOOL show;
    if (ABS(height)>0.1) {
        //show
        show = YES;
    }else{
        //hide
        show = NO;
    }

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 注册通知监听器,监听键盘弹起事件 注册通知监听器,监听键盘收起事件 键盘弹出调用该方法 键盘收起调用该方法 开始视...
    lczalh阅读 1,888评论 0 1
  • 1.先设置监听者以及监听对象和事件 [[NSNotificationCenter defaultCenter] a...
    methodname阅读 1,791评论 0 0
  • 总结: 鼠标事件 1.click与dbclick事件$ele.click()$ele.click(handler(...
    阿r阿r阅读 1,640评论 2 10
  • 今天听了个听力正确率极高 有点儿膨胀 嘻嘻 晚安啦
    蕊蕊江o阅读 126评论 0 0
  • 从盛夏来到初秋,三叶草故事家族无锡站在荟聚举办的故事会也进入到了第7期。本周,诺妈带给大家来自法国的极具童心和创造...
    BettySun阅读 810评论 0 0