代码之家  ›  专栏  ›  技术社区  ›  Ilya Suzdalnitski

在uitabarcontroller中打开视图

  •  1
  • Ilya Suzdalnitski  · 技术社区  · 15 年前

    我需要在我的选项卡栏中以编程方式打开某个选项卡。

    我尝试从我的UITabbarController调用以下方法:

    self.selectedViewController = myVController;
    

    这不管用。

    打开选项卡的正确方法是什么?

    谢谢您。

    更新:我尝试了以下代码:

    self.selectedViewController = [ [self viewControllers] objectAtIndex: 0];
    

    这将为我打开一个理想的选项卡(正在选择该选项卡),但活动视图未被更新。

    2 回复  |  直到 10 年前
        1
  •  4
  •   Geek    10 年前

    关于 selectedIndex 苹果的文件显示:

    在之前的iPhone操作系统版本中 版本3.0,此属性反映 所选选项卡栏项的索引 只有。正在尝试将此值设置为 视图控制器的索引,即 在选项卡栏中不可见,但 而是由更多的导航来管理 控制器,没有效果。

    也许这是你的问题?

    一个可能的解决方法是使用自己的 UITabBar 处理好自己的观点。然后你可以这样做:

    [tabBar setSelectedItem:[tabBar.items objectAtIndex:1]];
    

    只是实施 UITabBarDelegate 并定义此函数以获取项目选择消息和手动切换视图。(尽管如果您使用高级 UITabBarController 它可能不值得你付出努力。)

    - (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
    {
    
    }
    
        2
  •  -1
  •   Alistair    15 年前

    我的做法是 self.tabBarController.selectedIndex = 1 (第一个选项卡位于索引0处)。