我在tableViewCell中有一个textField。我最近注意到,如果我在文本框中输入一个值,然后从屏幕上滚动单元格,文本框中的值就会消失。iPhone - 在tableViewCell中的textField - 滚动关闭屏幕清除值
我有一个防范措施。如果没有UIKeyboard存在,则tableView不能滚动得足够远以至于不得不重绘单元格。但是,有些用户不使用键盘上的完成键来使键盘消失,而是将表格向上滚动,从而中断程序。
有没有办法立即将textField字符串存储到一个变量,或保持tableView滚动,或者如果用户试图滚动tableView使键盘消失?
我没有这个视图的NIB文件,它是一个程序化的tableViewController,所以我不能在Interface Builder中用不可见的自定义按钮做任何事情,就像在StackOverflow的其他问题中所建议的那样。
我使用case语句块将textField添加到Section 0的第2行.textField在头中作为指针声明,因此可以使用myTextField.text访问属性。 这有帮助吗? – Justin 2010-02-22 21:55:28
我不太关注。你是否在你的cellForRowAtIndexPath方法中说你有一个case语句来决定你是否在Section 0,Row 2,如果是,它会添加文本字段? 如果是这样,你在哪里调用[[UITextField alloc] init]?如果它也在cellForRowAtIndexPath方法中,那么每次行滚动到视图中时(或者调用cellForRowAtIndexPath),您可能会重新初始化文本字段。 尝试在loadView或控制器的主init方法中初始化文本字段。 – chrissr 2010-02-22 22:12:07