在细节之后更新表视图数据

时间:2013-10-11 20:20:19

标签: ios tableview

我遇到了问题。我需要从详细视图更新segue上的主视图数据。我试图实现prepareForSegue方法,但是没有调用后退按钮。

我能做到这一点的方式是什么?

1 个答案:

答案 0 :(得分:6)

从导航堆栈弹出视图控制器时,不会调用准备segue。我建议您在详情视图的[tableView reloadData]方法或主视图的viewWillDisappear方法中调用viewWillAppear。或者,如果要在进行更改后重新加载表视图,可以尝试使用通知。类似于主视图控制器中的以下内容:

- (void)viewDidLoad
{
    [super viewDidLoad];
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refresh:) name:@"RefreshMasterNotification" object:nil];
}

- (void)dealloc
{
    [[NSNotificationCenter defaultCenter] removeObserver:self];
}

- (void)refresh:(NSNotification *)notification
{
    [tableView reloadData];
}

每当您在详细视图控制器中进行更改时,类似以下内容:

[[NSNotificationCenter defaultCenter] postNotificationName:@"RefreshMasterNotification"];