文档章节

IOS 自定义toolbar 键盘弹出和隐藏的对应调整frame方法

SoulJa
 SoulJa
发布于 2015/06/17 15:07
字数 191
阅读 94
收藏 0

第一步:利用通知监听键盘的弹出和隐藏通知

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil];
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide:) name:UIKeyboardWillHideNotification object:nil];

第二步:在相应的方法中调整toolbar的frame

/**
 *  监听键盘弹出
 */
- (void)keyboardWillShow:(NSNotification *)note
{
    //1.取出键盘的frame
    CGRect keyboardF = [note.userInfo[UIKeyboardFrameEndUserInfoKey] CGRectValue];
    //2.取出键盘弹出的时间
    CGFloat duration = [note.userInfo[UIKeyboardAnimationDurationUserInfoKey] doubleValue];
    
    //3.执行动画
    [UIView animateWithDuration:duration animations:^{
        self.toolbar.transform = CGAffineTransformMakeTranslation(0, -keyboardF.size.height);
    }];
}

/**
 *  监听键盘隐藏
 */
- (void)keyboardWillHide:(NSNotification *)note
{
    //1.取出键盘的frame
    CGRect keyboardF = [note.userInfo[UIKeyboardFrameEndUserInfoKey] CGRectValue];
    //2.取出键盘隐藏的时间
    CGFloat duration = [note.userInfo[UIKeyboardAnimationDurationUserInfoKey] doubleValue];
    
    //3.执行动画
    [UIView animateWithDuration:duration animations:^{
        self.toolbar.transform = CGAffineTransformIdentity;
    }];
}

第三步:dealloc的时候去除通知

- (void)dealloc
{
    [[NSNotificationCenter defaultCenter] removeObserver:self];
}


© 著作权归作者所有

SoulJa
粉丝 31
博文 183
码字总数 32359
作品 0
武汉
程序员
私信 提问
iphone开发资源汇总

iphone开发资源汇总 如何用Facebook graphic api上传视频: http://developers.facebook.com/blog/post/532/ Keychain保存数据封装: https://github.com/carlbrown/PDKeychainBindingsContr......

长平狐
2012/10/25
232
0
Xamarin iOS教程之键盘的使用和设置

Xamarin iOS教程之键盘的使用和设置 Xamarin iOS使用键盘 在文本框和文本视图中可以看到,当用户在触摸这些视图后,就会弹出键盘。本节将主要讲解键盘的输入类型定义、显示键盘时改变输入视图...

大学霸
2015/06/19
0
0
iphone开发资源汇总

学习过程当中查找到的资料,做一个记录,以便更多朋友查看。 开发的过程有时候是简单的,因为我们可以站在巨人的肩上,跳得更高,走得更远。 如何用Facebook graphic api上传视频: http://d...

长平狐
2012/08/13
466
0
sencha touch 开发app fixed

sencha toucha 开发的app有一个聊天功能, ios下面,在点击输入框,弹出键盘时,顶部的toolbar消失,如何才能控制顶部toolbar不随内容滚动 目前:docked:top...

kkk我爱
2015/05/07
167
2
ios 最新系统bug与解决——微信公众号中弹出键盘再收起时,原虚拟键盘位点击事件无效

最近ios发布新版本系统12.1,随着部分用户的系统更新,一些问题也渐渐暴露出来。。。 公司用户反映微信公众号出现了点击无效的bug!!测试调查发现,只有iphonex、iphone6,ihpone7等部分机型...

ZoenLeo
2018/12/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

typescript 接口 函数类型 可索引类型

函数类型 可索引类型 数字索引签名 字符串索引签名 数字索引签名返回值 必须是 字符串索引签名返回值的子集 只读索引签名

lilugirl
今天
3
0
Oracle SQL语法实例合集

如需转载请注明出处https://my.oschina.net/feistel/blog/3052024 目的:迅速激活Oracle SQL 参考:《Oracle从入门到精通》 ------------------------------------------------------------......

LoSingSang
今天
2
0
增加 PostgreSQL 服务进程的最大打开文件数

https://serverfault.com/questions/628610/increasing-nproc-for-processes-launched-by-systemd-on-centos-7 要在systemd的配置里加才行...

helloclia
今天
2
0
组合模式在商品分类列表中的应用

在所有的树形结构中最适合的设计模式就是组合模式,我们看看常用商品分类中如何使用。 先定义一个树形结构的商品接口 public interface TreeProduct { List<TreeProduct> allProducts(...

算法之名
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部