我正在使用自定义UITableViewCell
在我的里面UITableView
。这些中的每一个UITableViewCell
s 相当高并且包含UITextField
在顶部。
当用户点击UITextField
为了编辑它,会出现一个键盘,然后UITableView
自动滚动以使单元格位于屏幕顶部。
问题是这会滚动UITableView
到底部UITableViewCell
,不是顶部。当。。。的时候UITableViewCell
是高并编辑了UITextField
位于顶部,因此您看不到UITextField
。我知道如何滚动UITableView
以编程方式,但我只是不知道如何禁用这种自动滚动,以便我可以滚动UITableView
靠我自己。我怎样才能做到这一点?
自动滚动行为位于UITableViewController
功能。
要禁用自动滚动,我找到了两种方法:
- 使用而不是
UITableViewController
只是一个UIViewController
- 自行设置数据源和委托。
- 覆盖
viewWillAppear
方法并且不调用[super viewWillAppear: animated]
使用这两种解决方案,您不仅禁用自动滚动,还禁用其他一些不错但不是必需的功能,这些功能在 Apple 类参考的概述中进行了描述:
https://developer.apple.com/documentation/uikit/uitableviewcontroller https://developer.apple.com/documentation/uikit/uitableviewcontroller
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)