2012-02-12 89 views
2

我试图根据在点击单元格时显示的模态视图中的UIPickerView的选择来更新UITableViewCell的详细文本。如何根据模态视图中的选择更新UITableViewCell的详细文本?

当用户在父视图中单击某个单元格时弹出模态视图,然后显示UIPickerView,当他完成选择期望值时,用户单击“保存”按钮。在用户点击“保存”按钮之后,模态视图消失,并且他单击的单元格上的细节标签文本被更新为使用Modale视图的UIPickerView所选的值。

不幸的是,我想不出一个好的,干净的方式来做到这一点... 我是新来的iOS编程,我想知道是否有任何“传统”的做法,我会也欣赏任何其他方式来实现这一点。

非常感谢!

回答

3

如果您知道提示模式视图的indexPath,你应该,它可能是很有诱惑力的只是抢引用的单元格,直接改变detailTextLabel像这样:

UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath]; 
cell.detailTextLabel.text = newTextValue; 

但是这不是因为它不一定反映模型的状态并且不提供动画。做的最好的事情是一定要更新备份您的tableview模型数据,然后做这样的事情:

NSArray *array = [NSArray arrayWithObject:indexPath]; 
[self.tableView reloadRowsAtIndexPaths:array withRowAnimation:UITableViewRowAnimationRight]; 

有许多UITableViewRowAnimation...期从包括无选择,但动画帮助用户看到他们实际上做了一个改变。

相关问题