我有一个由许多字段组成的表格视图,分为多个部分,这些字段来自数据库。我希望支持对字段中的文本进行就地编辑,因此我为每一行创建一个文本字段并将其添加到我的单元格中:
[cell.contentView addSubview:myTextField];
我给文本字段一个固定的标签,以便我可以轻松地配置单元格:
- (void)configureCell:(UITableViewCell *)cell atIndexPath:(NSIndexPath *)indexPath
{
Item *item = [self itemWithIndexPath:indexPath];
UITextField *textField = (UITextField *)[cell.contentView viewWithTag:1000];
textField.text = item.name;
}
编辑文本字段后,我需要更新数据库。我可以在文本字段上设置一个委托来响应编辑的结束,但是我必须以某种方式找出哪个 indexPath 已被编辑,以便我可以适当地更新数据库。
我怎样才能做到这一点?
我想我可以维护一个 tag->IndexPath 映射,每次我配置一个单元格时都会更新它,但这感觉有点矫枉过正。我疲惫的大脑是否错过了显而易见的事情?
谢谢,
蒂姆