我在storyboard上有一个带两个视图的navigationcontroller
在第一个视图中,我使用它来导航到下一个(第二个)视图:
[self performSegueWithIdentifier:@"SecondViewController" sender:sender];
segue的样式是push
第二个视图有两个顶部栏按钮,一个返回按钮正常导航,和一个自定义的右栏按钮,在后台做一些事情,然后用下面的代码导航回来:
[self.navigationController popViewControllerAnimated:YES];
有时,当我调用这段代码时,我想在第一个视图中调用一个函数(比如回调函数),它会刷新第一个视图中的一些内容。
我该怎么做呢?
我尝试在第一个视图中使用viewWillAppear,但我不想每次刷新东西,只是有时。
谢谢!
解决。
我找到了解决问题的方法:当我使用prepareForSegue函数时,我可以设置[segue destinationViewController]对象的任意属性。
我给发送者(第一个)控制器设置了一个委托属性,在第二个控制器中,我可以调用[delegate anyFunction]
这是有效的,也许这是一个很好的解决方案…: - s
委托应该能解决你的问题。让第一个视图控制器成为第二个视图控制器的委托,并在你解散视图控制器时给它发送消息。