【问题标题】:How to popToRootViewController from within a modal view?如何从模态视图中弹出ToRootViewController?
【发布时间】:2011-05-02 06:31:44
【问题描述】:

我有一组典型的 UITableViewController 视图。在所有视图上都有一个按钮,用于显示模型视图。在那个设置视图上有一个按钮。我希望该按钮关闭模式视图在 UITableViewController 的 navigationController 上实现 popToRootViewController。

关闭模态视图很容易:

[self dismissModalViewControllerAnimated:NO];

而且效果很好。我试过这个来弹出主 UITableViewController:

[self.parentViewController.navigationController popToRootViewControllerAnimated:NO];

什么都没有发生。

我可能可以实现一个委托来实现这一点,但是有相当多的视图控制器具有相同的设置按钮(还有更多),因此更倾向于找到一个不需要在每个视图控制器中添加额外代码的解决方案.

非常感谢!

【问题讨论】:

    标签: ios uinavigationcontroller modalviewcontroller


    【解决方案1】:

    查看 rdelmal (https://stackoverflow.com/a/16311935/1395563) 的答案,这对我来说就像一个魅力。我在模态视图中的操作中使用此代码。

    [(UINavigationController *)self.presentingViewController  popToRootViewController:NO];
    [self dismissViewControllerAnimated:YES completion:nil];
    

    【讨论】:

      【解决方案2】:

      试试

      [[[[UIApplication sharedApplication].keyWindow] rootViewController] popToRootViewController:YES];
      

      【讨论】:

      • 缺少navigationController(因此无法编译),但即使添加为 [[[[UIApplication sharedApplication].keyWindow rootViewController] navigationController] popToRootViewControllerAnimated:YES];它编译但什么也不做。
      【解决方案3】:

      找不到这样的解决方案,所以我实现了一个可以正常工作的协议/委托。只是:

      [self.navigationController popToRootViewControllerAnimated:NO];
      

      在委托调用中。

      【讨论】:

        【解决方案4】:

        在你的 appdelegate 文件中添加一个方法

        -(void)GotoRoot{
        [self.navigationController popToRootViewControllerAnimated:YES];}
        

        现在在你的注销按钮上的课堂上调用它

        [self dismissModalViewControllerAnimated:NO];
        [(TestAppDelegate *)[[UIApplication sharedApplication] delegate]) GotoRoot];
        

        请恢复结果;

        【讨论】:

          【解决方案5】:

          这对我有用

          [[self parentViewController] popToRootViewControllerAnimated:NO]
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多