我该如何调用父级TableView来重新加载

问题描述:

在这个iPhone应用程序中,我试图做到这一点,当你选择一个表格单元格时,它会保存该动作,弹出当前视图控制器并调用前一个视图控制器(这是并始终是一个TableView)重新加载它的单元格与新的数据。我该如何调用父级TableView来重新加载

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
//update data code here 
[self.navigationController popViewControllerAnimated:TRUE]; 
//Here is where I want the code to reload the view [parentTableView reload]; or something } 

这就是我目前所面对的,当你选择当前表视图

你需要需要发送-reloadDataUITableView细胞:

[tableView reloadData]; 

编辑:那么只是为了澄清,你有一个家长UITableViewController这推动了一个孩子UITableViewControllernavigationController?您示例中的代码在子视图控制器中的didSelectRowAtIndexPath中实现?

如果是这种情况,你需要添加一个属性给你的孩子UITableViewController它存储一个指向其父对象的指针。确保这不是一个引用计数的属性,因为这会导致循环引用。所以在你弹出你的孩子之前,它可以发送-reloadData的tableView它的父母的属性。

+0

谢谢@NSResponder :)。仍然不完全符合我的Objective-C语言。 – RedBlueThing 2010-01-14 05:52:08

+0

虽然我如何获得对前一个tabelView的引用?我想要您要重新加载的页面,而不是您在离开导航堆栈时要离开的页面。 – Affian 2010-01-14 20:59:09

+0

我通过将目标和选择器传递给作为回调函数的新视图来解决它,后来我还能够使用'NSNotification'来告诉它在新数据可用时进行更新 – Affian 2010-01-25 21:22:54