美文网首页iOS 知识点键盘处理
iOS跟随键盘走动的工具栏

iOS跟随键盘走动的工具栏

作者: 凡尘一笑 | 来源:发表于2016-09-30 11:52 被阅读901次

    我们经常都会看到一个工具栏在屏幕底部,然后会随着键盘出来上移,一直都是贴着键盘似的。比如下面这个,其实很多软件都有这种功能效果。


    tixxh .gif

    那我们怎么来实现呢,第一是编辑文本时候才需要弹出键盘,那么键盘有通知,那我们就使用通知来做这个功能。

    第一步:添加通知,注意这里用UIKeyboardWillChangeFrameNotification的原因是因为键盘可能更换,比如英文键盘变成九宫格键盘,或者使用第三方键盘,这样高度就不能固定死
       [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keybardWillChangeFrame:) name:UIKeyboardWillChangeFrameNotification object:nil];
    
    第二步:我们通过打印获取到我们需要的key
    Snip20160930_18.png
    第三步:通知的那个方法中实现效果
    - (void)keybardWillChangeFrame:(NSNotification *)note
    {
        NSLog(@"%@",note);
        CGFloat keyboardH  = [note.userInfo[UIKeyboardFrameEndUserInfoKey] CGRectValue].origin.y;
        CGFloat ScreenH = [UIScreen mainScreen].bounds.size.height;
        self.bottomContrain.constant = ScreenH - keyboardH;
        CGFloat duration = [note.userInfo[UIKeyboardAnimationDurationUserInfoKey] doubleValue];
        [UIView animateWithDuration:duration animations:^{
            [self.view layoutIfNeeded];
        }];
    }
    

    备注:

    如果有不足或者错误的地方还望各位读者批评指正,可以评论留言,笔者收到后第一时间回复。

    QQ/微信:2366889552 /lan2018yingwei。

    简书号:凡尘一笑:[简书]

    http://www.jianshu.com/users/0158007b8d17/latest_articles

    感谢各位观众老爷的阅读,如果觉得笔者写的还凑合,可以关注或收藏一下,不定期分享一些好玩的实用的demo给大家。

    文/凡尘一笑(简书作者)

    著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

    相关文章

      网友评论

        本文标题:iOS跟随键盘走动的工具栏

        本文链接:https://www.haomeiwen.com/subject/pzilyttx.html