获取隐形的uitableviewcell

时间:2011-06-10 16:16:52

标签: iphone uitableview

我有一个从xib加载的每个单元格的tableview。它的格式为UILabel一些空格和UITextField。在按钮上单击视图上的某个位置我需要操作以使用字典中的标签获取UITableView中的所有文本字段值。问题是当我分配一个单元格并使用indexPath从那里获取值时,代码会在单元格的indexPath处完全崩溃,该单元格是不可见的(超出屏幕范围)。

我很欣赏有关如何获取屏幕上不可见的单元格的任何好主意。

谢谢!

1 个答案:

答案 0 :(得分:3)

UITableViewCells在滚出视图时会被重用,这可能就是为什么它不会让你访问不可见的UITableViewCells的属性。

NSDictionary可能是您最好的选择:

  1. 在创建单元格期间根据UITextField值为每个单元格的indexPath.row设置标记。
  2. 将每个UITextField的代理设置为您的视图控制器。
  3. 在委托方法textFieldDidEndEditing中,更新字典:[dictionary setObject:textField.text forKey:[NSNumber numberWithInt:textField.tag]]
  4. 现在,您可以使用[dictionary allValues]访问textField值的数组。