将textfield保持在键盘上方

时间:2013-01-17 04:21:36

标签: objective-c cocoa-touch ios6

我想弄清楚如何在IOS中保留关于键盘的文本字段。我尝试了stackoverflow上的不同代码,但没有一个完美。就像文本字段在键盘上方并且我点击该字段一样,它不会向上移动。如何在键盘上方始终显示文本字段?谢谢!

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:1)

湖泊的链接是一个很好的资源。

基本上有两种方法来处理这种情况。

方法1:

您可以将视图封装在UIScrollView内,当键盘弹出时,您应该将整个视图向上滚动相等的距离以占据键盘占用的空间。

方法2:

将最终的父UIView置于当前UIViewController内并更改其框架(理想情况下使用动画),使其从屏幕顶部移开并为键盘腾出空间。

作为一般指南,方法1是首选方法。这是因为您仍然可以通过向上滚动来访问UIScrollView中的“更高版本”用户界面(例如,具有多个字段的表单)。在方法2中,如果没有首先解除键盘,用户将无法返回视图中的其他元素。当然,在接受键盘输入的同时,你可能不会需要来查看视图的其余部分,但这个决定取决于你。