【发布时间】:2011-02-15 07:11:15
【问题描述】:
我有一个UITableView,里面有一大堆自定义的UITableViewCells。每个UITableViewCells 中都有一个UITextView。
我遇到的问题是,如果用户触摸UITextView,它将成为 firstResponder 并弹出键盘。如果用户随后向下滚动到 firstResponder 所在的 UITableViewCell 不再出现在屏幕上,我无法在 UITextView 处将其关闭。
我曾尝试持有(并保留)对UITextView 的引用,但只要它离开屏幕并尝试访问它,我就会得到EXC_BAD_ACCESS。无论我保留多少次都会发生这种情况,所以我怀疑它可能直接调用了 dealloc(我不确定单元出队系统实际上是如何工作的)。
另一件奇怪的事情是,如果我将UITextField 滚动到屏幕外,键盘仍然可以用来对其进行写入,并且当我滚动回UITextField 时,输入的文本是可见的。
任何帮助将不胜感激。
【问题讨论】:
-
听起来你没有正确地重复使用你的单元格
-
您能否提供一些关于使用自定义 UITableViewCells 的建议?
标签: iphone objective-c uitableview uitextfield first-responder