【问题标题】:Is it possible to create a UINavigationController within a ModalPopup?是否可以在 ModalPopup 中创建 UINavigationController?
【发布时间】:2011-02-26 11:36:04
【问题描述】:

您好,我有一个 modalViewController,我正在使用

[self presentModalViewController:myController animated:YES];

我在 myController 中发生了一个事件,我希望将另一个控制器推送到 myController 顶部的导航堆栈上(再次以模态方式呈现)。我该怎么做?

我在 myController 中尝试了以下操作:

UINavigationController* navController = [[UINavigationController alloc] initWithRootViewController:self];
  NewController* n = [[NewController alloc] init];
  [navController pushViewController:n animated:YES];
  [n release];

但这不起作用....

【问题讨论】:

    标签: iphone cocoa uiviewcontroller uinavigationcontroller


    【解决方案1】:

    首先创建你的第二个modalViewController

    NewController* new = [[NewController alloc] init];
    

    然后像这样创建 navigaitonController

    UINavigationController* navigationController = [[UINavigationController alloc] initWithRootViewController: new];
    navigationController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
    

    然后将您的 navigationController 显示为 modalview 控制器

    [self presentModalViewController:navigationController animated:YES];
    [navigationController release];
    

    给你。希望对您有所帮助。

    【讨论】:

      【解决方案2】:

      如果我理解正确,您想在模态视图顶部显示新的导航堆栈。 如果它是正确的,我认为这是不可能的。模态视图是最重要的。即使您将新的 ViewController 推送到“父”导航堆栈 - 在您完全脱离模态视图之前它也不会可用。

      【讨论】:

      • 这正是我想要的——在模态视图的顶部显示一个新的导航堆栈。不过,我认为这是可能的。如果您查看 facebook 应用程序,请转到主屏幕,点击底部的通知栏,然后对于任何通知,点击将在通知模式视图顶部推送导航堆栈的任何链接。有什么想法是如何做到的?
      • 是的,我想我知道它是怎么做的。他们不会将导航堆栈推到顶部。他们恕我直言创建 UINavigationViewController,在其中推送通知视图并将其显示为模式视图。希望我解释清楚。
      猜你喜欢
      • 2020-09-12
      • 2020-08-09
      • 2020-04-30
      • 2012-10-09
      • 1970-01-01
      • 2016-08-28
      • 1970-01-01
      • 2020-07-17
      • 2013-10-15
      相关资源
      最近更新 更多