【发布时间】:2016-02-02 13:27:20
【问题描述】:
我有一个带有 3 个静态单元格的 UITableViewController。一个在顶部的高度为 60.0,一个在底部的大小相同。中间单元格的高度是动态的,非常大,所有 3 个单元格一起填满了整个屏幕。
中间单元格包含一个填充整个单元格的 UITextView。
我的问题是,当我想在该 TextView 中键入内容时,tableview 会在键盘上升时自动滚动,并且在我手动回滚之前,我看不到包括光标在内的单元格顶部。
有什么办法可以防止表格视图像这样自动滚动?或者告诉它应该滚动到单元格的顶部以便我看到光标?
我已经尝试覆盖viewWillAppear(_:) 方法而不调用它的超级方法,但是我无法手动滚动表格视图,因此当键盘可见时我无法到达最后一个单元格。
我还尝试手动滚动到textViewDidBeginEditing(_:) 内的单元格,但它没有任何改变。我的方法看起来像这样。
func textViewDidBeginEditing(textView: UITextView) {
let indexPath = NSIndexPath(forRow: 1, inSection: 0)
self.tableView.scrollToRowAtIndexPath(indexPath, atScrollPosition: .Top, animated: true)
}
我不知道我还能尝试什么,所以非常感谢您的帮助。
【问题讨论】:
标签: ios swift uitableview uitextview