在UITableView
中,单元格包含UITextField
对象,是否将其中一个UITextField
对象作为第一响应者阻止其单元格被重用?
例如,如果UITableView
的行数超过了屏幕上的大小,则可以点击UITextField
以打开该单元格中的字段的键盘。然后滚动表格视图,使该单元格离开屏幕。当滚动回单元格时,我可以看到对所有单元格的-tableView:cellForRowAtIndexPath:
的调用,除了包含当前具有第一响者状态的UITextField
的单元格。
这个行为让我相信iOS知道我的单元格包含第一个响应器,因此选择不丢弃单元格,因此当它滚动回视图时不需要调用数据源来获取单元格。
这种行为是理想的,但我很担心,因为我没有看到任何文档表明这种行为是有保证的,如果存在不正确的条件,我将讨厌依赖它。
谁能给我指出一些关于表视图单元重用和覆盖这种情况的急救人员的文档?
iOS SDK官方文档中没有这样的参考。您的担心是正确的,您所观察到的这种行为是不能保证的,不应该依赖。