从窗体类型单元格获取数据

从窗体类型单元格获取数据

问题描述:

我有一个表视图,列出了联系人。点击编辑单元重新加载并将标签作为文本输入呈现。我需要在右上方有保存按钮,所以当我点击保存时,如何从Cell中获取更新的输入?由于行动是从外部触发的,我需要向单元发送一些消息。从窗体类型单元格获取数据

现在我正在使用cellForRowAtIndexPath和通过访问单元格属性来获取数据。

CustomCell *cell = [tableView dequeueReusableCellWithIdentifier:@"id "forIndexPath:editCellIdx]; 
NSString *input 1 = cell.labelOne.text; ... and so on 

有什么更好的办法吗?

+0

获得文本框的文本编辑,我认为你应该修改模型立即文本editted。因此,如果用户决定不保存数据,则需要放弃半编辑模型,基本上什么也不做。因此,当您进入编辑模式时,请取一个模型的*副本,并在保存时用已编辑的模型覆盖原始模型。 – trojanfoe 2014-09-20 09:20:43

+0

@trojanfoe我有一个类似的想法。而不是将模型暴露给View。我可以编写一个接口,在编辑后将文本委托给后者,并且视图控制器将不断用文本更新模型。使用这样的委托是否是一个矫枉过正的问题,或者这比使用atleast更好? – user88975 2014-09-21 09:06:42

您可以将编辑的数据保存在NSMutableDictionary或NSMutableArray中。然后重新加载tableview数据。

您可以从下面的方法

- (void)textFieldDidEndEditing:(UITextField *)textField 
{ 
    NSString *cellEditedText = textField.text; 
    // save this text in dictionary or array. 
} 

- (void)saveData 
{ 
    [tableview reloadData]; 
}