1

我有一个简单的问题。我使用带有导航控制器的故事板。应用程序执行从第一个 VC 到另一个 VC 的 push segue。用户按下“返回”按钮后,他将返回到第一个 VC。我需要处理这个事件,刷新显示数据。

我该怎么做?

谢谢。

4

4 回答 4

2

我希望您需要在第一个 VC 中刷新数据。在第一个 VC 中实现viewDidAppear:

-(void)viewDidAppear:(BOOL)animated
{
  [super viewDidAppear:animated];
  // refresh data
}
于 2013-04-11T13:45:15.640 回答
0

看一下这个问题: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];
}
于 2013-04-11T13:45:05.540 回答
0

在 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
{
    //...
}
于 2014-07-23T17:45:49.060 回答
0
- (void)didMoveToParentViewController:(UIViewController *)parent{
    if(!parent){
        //...
    }
}
于 2014-07-29T07:38:10.007 回答