返回到没有navigationcontroller的uiviewcontroller

时间:2013-06-15 23:21:09

标签: uiviewcontroller uinavigationcontroller uibarbuttonitem

我的应用程序有一个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实现相同的代码,如果是这样,我如何在它们之间同步数据?

1 个答案:

答案 0 :(得分:1)

由于您以模态方式呈现视图控制器(state1NavigationController),因此需要使用方法 dismissViewControllerAnimated:completion:来关闭state1NavigationController并返回。