【问题标题】:Is there a way to pop back to previous navigation controller?有没有办法回到以前的导航控制器?
【发布时间】:2014-02-06 14:01:34
【问题描述】:

我有一个基本导航控制器,其中嵌套了一个标签栏控制器。在该选项卡栏控制器内部是另一个嵌套在其中的导航控制器。如果我在子导航控制器中,我可以在其中一个视图中弹出到根视图,但它只会将我带到 CHILD 导航控制器的根视图。有没有办法弹回第一个导航控制器?

【问题讨论】:

    标签: ios uinavigationcontroller


    【解决方案1】:

    如果您使用故事板,那么您可以使用 Unwind segue 方法,这对我来说总是有效的

    只需 Control + 从“弹出到主屏幕”UIButton 拖动到退出(场景底部的绿色按钮)选择在标题为“主”的第一个屏幕中声明的展开方法,例如

    -(IBAction)customUnwind:(UIStoryboardSegue *)sender
    {
    
        NSLog(@"Unwind successful");
    
    }
    

    【讨论】:

    • 感谢您的帮助,但我的取消按钮是通过编程方式创建的,因此无法在情节提要中从中拖动。
    • 刚刚在 Storyboard 中创建了 UIButton 并使用了这种方法。谢谢。
    【解决方案2】:

    试试这个, 您可以通过

    从子导航控制器弹出到根视图
     UITabBarController *tc = (UITabBarController *)self.navigationController.parentViewController;
    [tc.navigationController popToRootViewControllerAnimated:YES];
    

    【讨论】:

    • 感谢您的帮助,但这段代码执行时没有任何反应。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-24
    • 1970-01-01
    • 2012-08-30
    • 1970-01-01
    • 1970-01-01
    • 2018-06-23
    • 2010-12-27
    相关资源
    最近更新 更多