博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
打开键盘遮住View的问题解决方法-IOS开发
阅读量:6069 次
发布时间:2019-06-20

本文共 1250 字,大约阅读时间需要 4 分钟。

5.0 以后键盘的高度貌似不是216了,不过不要紧,我们调整调整就是了:

iPhone ipad
竖屏(portrait) 216 264
横屏(landScape) 140 352

我们采取的方法就是在textField(有可能是其他控件)接收到弹出键盘事件时把self.view整体上移216px了(我们就以iPhone竖屏为例了)。

有关View的frame,origin,size之类的知识点不懂的请参看我的另一篇博文:

首先我们要设置textField的代理,我们就设为当前控制器了。

textField,delegate=self;

然后我们在当前控制器实现下面三个委托方法:

[java]  

 

  1. - (void)textFieldDidBeginEditing:(UITextField *)textField  

  2. //当点触textField内部,开始编辑都会调用这个方法。textField将成为first responder   

  3.        NSTimeInterval animationDuration = 0.30f;      

  4.       CGRect frame = self.view.frame;  

  5.       frame.origin.y -=216;  

  6.       frame.size.height +=216;  

  7.       self.view.frame = frame;  

  8.        [UIView beginAnimations:@"ResizeView" context:nil];  

  9.        [UIView setAnimationDuration:animationDuration];  

  10.        self.view.frame = frame;                  

  11.        [UIView commitAnimations];                  

  12. }  

[java]  

 

  1. - (BOOL)textFieldShouldReturn:(UITextField *)textField   

  2. {

    //当用户按下ruturn,把焦点从textField移开那么键盘就会消失了  

  3.         NSTimeInterval animationDuration = 0.30f;  

  4.         CGRect frame = self.view.frame;      

  5.         frame.origin.y +=216;        

  6.         frame.size. height -=216;     

  7.         self.view.frame = frame;  

  8.     //self.view移回原位置    

  9.     [UIView beginAnimations:@"ResizeView" context:nil];  

  10.     [UIView setAnimationDuration:animationDuration];  

  11.         self.view.frame = frame;                  

  12.         [UIView commitAnimations];  

  13.         [textField resignFirstResponder];     

  14. }         

本文转自 卓行天下  51CTO博客,原文链接:http://blog.51cto.com/9951038/1772565,如需转载请自行联系原作者
你可能感兴趣的文章
uva 10107 - What is the Median?
查看>>
Linux下基本栈溢出攻击【转】
查看>>
c# 连等算式都在做什么
查看>>
使用c:forEach 控制5个换行
查看>>
java web轻量级开发面试教程摘录,java web面试技巧汇总,如何准备Spring MVC方面的面试...
查看>>
根据调试工具看Vue源码之组件通信(一)
查看>>
Thrift RPC 系列教程(5)—— 接口设计篇:struct & enum设计
查看>>
斯坦福-随机图模型-week1.5
查看>>
灵活的运用Model类
查看>>
hadoop 之分布式安装
查看>>
使用ansible工具部署ceph
查看>>
linux系列博文---->深入理解linux启动运行原理(一)
查看>>
Android反编译(一) 之反编译JAVA源码
查看>>
结合当前公司发展情况,技术团队情况,设计一个适合的技术团队绩效考核机制...
查看>>
python-45: opener 的使用
查看>>
cad图纸转换完成的pdf格式模糊应该如何操作?
查看>>
Struts2与Struts1区别
查看>>
网站内容禁止复制解决办法
查看>>
Qt多线程
查看>>
我的友情链接
查看>>