ios - 调整 UITableView 以显示隐藏 UIKeyboard 的最简单方法

标签 ios uitableview uikeyboard

我有一个 UITableView 和一些 UITableViewCell。每个单元格都包含一个 UITextfield。点击 textFields 会导致键盘显示。不幸的是,键盘覆盖了 iPhone 屏幕下方的一些单元格。

在显示键盘时向上滚动 tableView 的最简单方法是什么?

我试验过 contentOffset。这适用于实际滚动 tableView。但是我无法确定哪个单元格是“事件的”(有一个当前是 firstResponder 的 textField)。我的应用同时支持纵向和横向,因此有时需要在设备旋转时滚动 tableView。

最佳答案

跟踪哪个文本字段当前处于事件状态的一种简单方法是设置其 tag cellForRowAtIndexPath: 上 indexPath 行的属性

另一种方法是使用这一行:

NSIndexPath *indexPath = [self.tableView indexPathForRowAtPoint:[textField convertPoint:textField.frame.origin toView:self.tableView]];

关于 textFieldShouldBeginEditing:当 textField 变为事件状态时,或当设备旋转时的旋转回调,然后使用 scrollToRowAtIndexPath:atScrollPosition:animated: 滚动 tableView

关于ios - 调整 UITableView 以显示隐藏 UIKeyboard 的最简单方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8072889/

相关文章:

ios - 如何以编程方式关闭电话提示

ios - 由于“NSInvalidArgumentException”而终止应用程序

iOS 表格 View ——我不知道这是否可行

ios - TouchID 后应用程序变为事件状态时键盘不可见

ios - 显示键盘时,Popover 内的 UIScrollView 内的 UITextView 不完全可见

ios - 当键盘弹出时将原点移动到顶部时会出现黑色

ios - 本地通知声音不起作用

ios - 推荐垃圾邮件移动应用程序

ios - 如何从两个不同的 View 层次结构中 'link' 两个层?

java - Appium 滚动操作发生两次