iOS跟随键盘走动的工具栏

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


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给大家。

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

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

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

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,765评论 25 709
  • 风叩门 雨敲窗 馨凉之意锋不可挡 如情人的媚眼 本就让人魂牵梦萦 暑气黯然神伤 还没赏够仙子们 胴体的青春与峥嵘 ...
    美丽天空一阅读 544评论 28 42
  • 做你的专属时尚搭配师,打造时尚朋友圈。红人博主自拍随时与你分享,教你如何穿衣搭配。”相信很多女孩子都很爱逛街买衣服...
    游虫先生阅读 436评论 0 1