当前位置:  开发笔记 > 编程语言 > 正文

为UITextField或UITextView显示键盘时调整界面

如何解决《为UITextField或UITextView显示键盘时调整界面》经验,为你挑选了2个好方法。

我有一个表格,每个单元格包含一个标签和一个文本字段.问题是,当我去编辑最后一行时,键盘隐藏了表格的下半部分,我无法看到正在键入的内容.如何将界面移动到键盘上方,以便查看键入的内容?

谢谢,穆斯塔法



1> Ben Gottlieb..:

您将要注册viewController UIKeyboardDidShowNotificationUIKeyboardWillHideNotification事件.当你得到这些,你应该调整你的表格的界限; 键盘高度为170像素,因此只需适当缩小或增大表格边界,它应适当调整到键盘.


那么我怎么知道它的170像素高,以编程方式说呢?

2> Wayne Lo..:

根据您的UI方案,此问题很复杂.在这里,我将讨论UITextField或UITextview驻留在UITableViewCell中的场景.

    您需要使用NSNotificationCenter来检测UIKeyboardDidShowNotification事件.请参阅http://iosdevelopertips.com/user-interface/adjust-textfield-hidden-by-keyboard.html.您需要缩小UITableView框架大小,使其仅占用键盘未覆盖的屏幕区域.

      如果您点击UITableViewCell,操作系统将自动将单元格定位在UITableView的查看区域内.但是当你点击UITextView或UITableViewCell时它就不会发生,即使它位于UITableViewCell中.

你需要打电话

[myTableView selectRowAtIndexPath:self.indexPath animated:YES scrollPosition:UITableViewScrollPositionBottom];` 

以编程方式"点击"单元格.

如果您实现两个点,您将在键盘正上方看到UITextView/Field位置.请记住,UITableView/Field所在的UITableViewCell不能高于"未覆盖"区域.如果您不是这种情况,则有不同的方法,但我不会在此讨论.

推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有