【问题标题】:Problem is navigating through views of iPhone application (using push/pop viewcontroller)问题是浏览 iPhone 应用程序的视图(使用推送/弹出视图控制器)
【发布时间】:2009-06-12 23:32:03
【问题描述】:

这里是场景。我有 4 个视图控制器 v1、v2、v3、v4,它们显示在 iPhone 的 4 个选项卡中(使用 UITabbarcontroller)。现在我将另一个视图 sv1 推送到 v1(当我查看 v1 时,我使用 pushviewcontroller,如 [appDelegate.nv pushViewController:sv1 animated:YES])。 nv 是 UINavigationController init with rootviewcontroller, v1.

现在,如果我按 v2 选项卡栏(在查看 sv1 时),然后按 v1,我会看到 sv1。但是,我不希望这种行为。我想显示 v1 而不是 sv1。单击 v2 时,如何从其父视图中删除 sv1?

我尝试过使用 [self.navigationController popToRootViewControllerAnimated:NO];来自 sv1 的 viewWillDisappear 方法,它不起作用(它回到 v1 但一切都搞砸了,比如没有绘制导航栏,也没有显示 v1 的标签栏图标,整个 v1 视图似乎被破坏了)。

谁能告诉我如何解决这个问题?

谢谢。

【问题讨论】:

    标签: iphone


    【解决方案1】:

    你可以先读这个:

    Problem popping to root nav controller on tab bar switch

    另外...UITabBarController 符合UITabBarDelegate 的定义

    - (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
    

    你可以在那里打电话给popToRootViewControllerAnimated,而且看起来你的UINavigationController for v1可以从appDelegate访问

    【讨论】:

      猜你喜欢
      • 2012-08-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-26
      • 1970-01-01
      • 2012-07-07
      • 2014-10-03
      相关资源
      最近更新 更多