【问题标题】:UINavigationController to UIViewController difficultyUINavigationController 到 UIViewController 的难度
【发布时间】:2012-07-03 09:30:21
【问题描述】:

如何将其转换为UIViewController 是否可能:

for (UIViewController *tmpController  in [self.navigationController viewControllers]) 
{
    if ([tmpController isKindOfClass:[RootViewController class]])
    {
        [self.navigationController popToViewController:tmpController animated:YES];
        break;
    }
}

[self.navigationController viewControllers] --> 如何将其转换为UIViewController,因为我有错误,

[self.navigationController popToViewController:tmpController animated:YES]; --> 而这部分我把它转换成这个 --> [self dismissModalViewControllerAnimated:YES];

【问题讨论】:

  • 这是什么问题,请更清楚
  • 把这个转换成ViewController,这个是导航控制器吧?
  • 这段代码看起来正确。
  • 我编辑了它,想为viewController而不是导航控制器制作它
  • 你的问题不是很清楚

标签: objective-c uiviewcontroller uinavigationcontroller


【解决方案1】:

如果您有 ViewController A 呈现 ViewController B 呈现 ViewController C

如果你想回到 A,在 viewController C 中执行以下操作

[self dismissModalViewControllerAnimated:NO];
[[self presentingViewController] dismissModalViewControllerAnimated:NO];

【讨论】:

    【解决方案2】:

    您可以按如下方式获得视图层次结构:

    for(UIView *view in [self.view subviews])
    

    【讨论】:

      【解决方案3】:

      从上面的评论中,我觉得您正在展示像 From A 到 B 和 Than B 到 C 这样的控制器。

      现在你想从 C 到 A 使用下面的代码来做到这一点

      [self.navigationController popToRootViewControllerAnimated:YES];
      

      编辑

      //Try this.
      [[[self parentViewController] parentViewController] dismissModalViewControllerAnimated:YES];
      

      【讨论】:

      • 我以模态方式呈现它们,而不是通过导航,
      猜你喜欢
      • 2015-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-13
      • 1970-01-01
      • 2011-06-24
      相关资源
      最近更新 更多