我有一个简单的问题。我使用带有导航控制器的故事板。应用程序执行从第一个 VC 到另一个 VC 的 push segue。用户按下“返回”按钮后,他将返回到第一个 VC。我需要处理这个事件,刷新显示数据。
我该怎么做?
谢谢。
我有一个简单的问题。我使用带有导航控制器的故事板。应用程序执行从第一个 VC 到另一个 VC 的 push segue。用户按下“返回”按钮后,他将返回到第一个 VC。我需要处理这个事件,刷新显示数据。
我该怎么做?
谢谢。
我希望您需要在第一个 VC 中刷新数据。在第一个 VC 中实现viewDidAppear:
-(void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
// refresh data
}
看一下这个问题:iOS中navigationController中的后退按钮回调
-(void) viewWillDisappear:(BOOL)animated {
if ([self.navigationController.viewControllers indexOfObject:self]==NSNotFound) {
// back button was pressed. We know this is true because self is no longer
// in the navigation stack.
}
[super viewWillDisappear:animated];
}
在 iOs 5.0 之前的版本中,您可以使用 -viewWillDisappear:
- (void)viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
if (![[self.navigationController viewControllers] containsObject:self]) {
//...
}
}
在 iOS 5.0+ 中,您可以使用 -didMoveToParentViewController:
- (void)didMoveToParentViewController:(UIViewController *)parent
{
//...
}
- (void)didMoveToParentViewController:(UIViewController *)parent{
if(!parent){
//...
}
}