我想在显示键盘时向上滚动UITableView,以使文本字段不被键盘覆盖。我知道如何滚动tableView和contentInset等。在计算滚动距离时遇到麻烦。

我有键盘尺寸(来自UIKeyboardDidShowNotification)。但是,我在获取正在编辑的文本字段的有用的原始值时遇到了麻烦。传递给UITextFieldtextFieldDidBeginEditing的来源没有帮助:值是相同的,而不管正在编辑的textField。 textField.superview.origin也无济于事。

如何获得正在编辑的textField的原点的有用值?

我将使用此值以及键盘高度来确定滚动距离。

最佳答案

我个人认为最好的方法是更改​​表格视图的框架,以使它完全不会被键盘隐藏(您可以查看键盘框架并根据此更改表格视图的框架)。然后使用scrollToRowAtIndexPath:atScrollPosition:animated:滚动表格视图,以使该单元格可见。

这样,UITableView会为您处理实际的内容偏移量。

关于ios - UITableViewCell中的UITextField的原始值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8610555/

10-10 21:02