iOS输入框自适应键盘高度,避免遮挡_ios popup输入框自适应高度_编织人生_程就未来的博客-程序员秘密

技术标签: iOS输入框避免遮挡  键盘  iOS输入框自适应键盘高度  iOS - UIKit框架  iOS输入框自适应键盘  输入框避免遮挡  

//注册通知

- (void)regNotification

{

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

}


- (void)unregNotification

{

    [[NSNotificationCenter defaultCenter] removeObserver:self name:UIKeyboardWillChangeFrameNotification object:nil];

}


#pragma mark - notification handler

- (void)keyboardWillChangeFrame:(NSNotification *)notification

{

    NSDictionary *info = [notification userInfo];

    CGFloat duration = [[info objectForKey:UIKeyboardAnimationDurationUserInfoKey] floatValue];

    CGRect beginKeyboardRect = [[info objectForKey:UIKeyboardFrameBeginUserInfoKey] CGRectValue];

    CGRect endKeyboardRect = [[info objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue];

    

    CGFloat yOffset = endKeyboardRect.origin.y - beginKeyboardRect.origin.y;

    

    CGRect inputFieldRect = self.TextField.frame;

    CGRect moreBtnRect = self.moreTypeBtn.frame;

    

    inputFieldRect.origin.y += yOffset;

    moreBtnRect.origin.y += yOffset;

    

    [UIView animateWithDuration:duration animations:^{

        self.inputTextField.frame = inputFieldRect;

        self.moreInputTypeBtn.frame = moreBtnRect;

    }];

}


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/sevenquan/article/details/50461630

智能推荐

locate: 无法执行 stat () `/var/lib/mlocate/mlocate.db‘: 没有那个文件或目录 的问题解决方案_locate: 无法执行 stat () `/var/lib/mlocate/mlocate.db'_Crazy_Hengji的博客-程序员秘密

Centos8中locate: 无法执行学习Linux中的locate命令过程中,敲命令报错:解决方法错误原因学习Linux中的locate命令过程中,敲命令报错:[[email protected] ~]# touch /opt/hengji.txt[[email protected] ~]# locate hengji.txtlocate: 无法执行 stat () `/var/lib/mlocate/mlocate.db': 没有那个文件或目录解决方法[[email protected] ~]# updatedb[r

《博超服装管理系统》JAVA 后台项目研发总结_程安i的博客-程序员秘密

《博超服装管理系统》JAVA 后台项目研发总结模块功能:信息档案、采购管理、零售管理、库存管理、1.后台管理1.1.信息档案在系统正式运行之前必须先要对系统进行信息初始化,即输入各基本资料才能开始使用软件进行管理。基本资料包括:商品分类、操作员档案、其他资料、等,这些功能都列在程序主界面中的信息档案模块内。界面如下图所示:1.1.1.商品分类商品的分类,基本资料的一种,是使用软件的前...

【XSY1519】彩灯节 DP 数学 第二类斯特林数_ez_yww的博客-程序员秘密

题目大意​  有nn盏灯,mm个限制。每个限制(x,y)(x,y)表示第xx盏灯与第yy盏灯之间必须且只能亮一盏。​  记一种情况xx亮着的灯的数量为fxf_x,求∑(fx)k\sum {(f_x)}^k​  n≤200000,k≤100n\leq 200000,k\leq 100题解​  我们先把整张图黑白染色。​  如果不是二分图就无解。​  我们发现两个不同的联通分量的灯的状态是没有关系的。​

VC6中C代码生成汇编代码_vc6生成的汇编_nbabn的博客-程序员秘密

在vc6中的c代码可以在编译的时候创建成一份汇编代码:settings -> c/c++ -> category选listing files,listing file type选assembly-only listing,在listing file name项指定的路径会生成与源文件同名的asm文件。

java-ee项目_JavaEE项目_好奇心十足的小姐姐的博客-程序员秘密

最近一直在忙一个医院的项目,包括录入、联合查询(各种查询条件与或拼接)、导出(格式为Excel,PDF和HTML)、短信自动提示(自动根据随访规则发短信)、简报统计(柱状图统计病例和标本,分年分月)、上传(图片和视频)。用Ext3.0做的界面,觉得Ext的树和Grid特别好用,特别适合于做这种管理系统。Spring管理各个bean,Hibernate连接数据库。联合查询:比较简单,主要是处理各个条...

最长回文子串与Manacher算法_zzm_的博客-程序员秘密

2019独角兽企业重金招聘Python工程师标准>>> ...

随便推点

【高分】ubuntu 、打开USB摄像头、Linux、USB摄像头驱动_ubuntu 打开摄像头_寰宇C++的博客-程序员秘密

一、让系统可以识别到usb摄像头设备 打开终端,输入命令:ls /dev/v*,则可看到"/dev/video0",表示成功驱动摄像头。如果没有的话,拔掉摄像头,重新插上。然后再输入命令:ls /dev/v*,则可看到。 输入命令:lsusb ,可以查看usb摄像头的型号。二、安装应用程序显示摄像头捕捉到的视频1)使用应用程序camorama输入命令:su...

C++ Primer Plus (第6版) 中文版 第十一章 使用类 编程练习答案_cprimeplus第六版十一章第一题_Fanacio的博客-程序员秘密

第十一章 编程练习1.修改程序清单11.15, 使之将一系列连续的随机漫步者位置写入文件中。对于每个位置,用步号进行标示。另外,让该程序将初始条件(目标距离和步长)以结果小结写入到该文件中。头文件:...

从 Centos 安装到TensorFlow的安装_htsitr的博客-程序员秘密

由于工作长期针对windows,所以在linux环境下不是很熟悉,吃了很多亏。但多做笔记还是有用的。下面的步骤应该是最少的安装方法吧1)从网上下载Centos的安装包,我下的是CentOS-7-x86_64-Minimal-1611.iso,最小的,700M2)从网上下载VMware Workstation Pro,使用的是VMware Workstation 12 Pro3) 安装

防火墙关闭后不能ping通的解决办法_weixin_30275415的博客-程序员秘密

修改被ping服务器的防火墙设置:开始-控制面板-防火墙-高级-入站规则-文件和打印机共享(回显请求 - ICMPv4-In)-右键-启用一共有两个。转载于:https://www.cnblogs.com/zhjx0521/p/10418765.html...

【总结】2019中山纪中信息学夏令营_8.11_楚颜a的博客-程序员秘密

今天上午去物理报告厅听了提高组字符串基础,讲了有哈希,KMP算法,Trie字典树,AC自动机,然鹅我只听懂了前三个,AC自动机如果要听懂得耗点脑子啊,可是我没有脑子下午巩固今天上午听的内容,在CSDN的博客上看了关于KMP算法的详细解说,发现自学其实比在大讲堂听好多了,一般人多的讲堂老师的进度对于像我这种菜鸡来说是有点快的,所以还是乖乖地来打基础吧晚上上洛谷,发现我连普及练习场都还没过,于是乎...

推荐文章

热门文章

相关标签