在iPhone上的键盘顶部添加一个文本框和一个按钮

时间:2009-05-15 00:28:20

标签: iphone iphone-softkeyboard

我想在它旁边添加一个文本框和一个按钮。它们将位于窗口的底部。然后,当我触摸文本框(键入内容)时,将出现键盘,整行(带有文本框和按钮)向上滚动,键盘将在它们正下方。能告诉我怎么办?

有没有示例程序?

感谢。

2 个答案:

答案 0 :(得分:4)

Matt Gallagher在他的博客上发布了这个帖子:

Sliding UITextFields around to avoid the keyboard

这是您想要的一步一步的例子。

答案 1 :(得分:3)

在XCode文档 iPhone应用程序编程指南中,有一节介绍“移动位于键盘下方的内容”,其中介绍了在键盘即将显示时接收键盘通知。那里有代码向您展示如何获得键盘大小(根据方向而变化)。我在此不再重复。

您可以使用相同的技术获取UIKeyboardWillShowNotification通知,并获取键盘结束位置的高度。这为您提供了视图需要去的底部边缘,有效地将其置于键盘上方。所以只需将文本框和按钮放在视图中即可。当您收到通知时,告诉您的视图需要去哪里(键盘高度+容器视图的高度)并且您已完成。您还需要捕获UIKeyboardWillHideNotification以将视图移回原位,因此请跟踪原始容器视图位置。

它非常简单,看起来很漂亮,特别是如果你使用漂亮的UIView动画效果并设置合适的时机。