【发布时间】:2012-01-20 18:38:41
【问题描述】:
我有一个带有自定义 UITableViewCells 的 UITableViewController,其中包含一个 UITextField。将表格视图切换到编辑模式时,我在表格底部添加了一个新单元格,并希望将此单元格设为becomeFirstResponder。我的tableView:cellForRowAtIndexPath: 方法检查这个底部单元格,所以我只添加了以下行:
[cell.theTextField becomeFirstResponder];
我认为应该可以。但是,当第一次显示表格视图时,它似乎不起作用。但是,如果我选择单元格(使其成为第一响应者),然后退出编辑模式(在我的代码中导致 resignFirstResponder),然后我可以返回编辑模式并神奇地成为我所期望的第一响应者!
请注意,即使我选择了不同的单元格(它们都有文本字段)结束编辑模式并退出编辑模式,然后重新进入,它仍然可以工作,只要 在某个时候,我创建了最后一个单元格becomeFirstResponder(通过选择它)。
所以,我的猜测是,当它第一次成为第一响应者时,会在表格视图或其他最初未设置的地方设置一些东西,从那时起它就开始工作了。
有人对这里可能发生的事情有任何想法吗?
【问题讨论】:
标签: iphone ios5 uiresponder