我的应用程序有一个UIViewController,它没有包含在UINavigationController中,我调用了不同的UINavigationControllers,每个UINavigationControllers代表状态机中的状态。 从代码中调用这些UINavigationControllers就像这样:
-(void) callState1
{
[popover dismissPopoverAnimated:YES];
UINavigationController *state1NavigationController = [self.storyboard instantiateViewControllerWithIdentifier:@"state1Navigation"];
[self presentViewController:state1NavigationController animated:NO completion:nil];
}
在state1中有一个表示后向控件的自定义UIBarButtonItem。
self.navigationItem.leftBarButtonItem = self.backBtn;
是否有返回调用UIViewController的本机代码?
或者我应该在调用UIViewController的后退按钮中从callState1
实现相同的代码,如果是这样,我如何在它们之间同步数据?
答案 0 :(得分:1)
由于您以模态方式呈现视图控制器(state1NavigationController),因此需要使用方法 dismissViewControllerAnimated:completion:来关闭state1NavigationController并返回。