【问题标题】:How to set first TabBar selected programmatically on iPhone如何在 iPhone 上设置第一个以编程方式选择的 TabBar
【发布时间】:2011-02-25 23:28:18
【问题描述】:

我有 UITabBar 视图,其中有 5 个选项卡。我正在使用didSelectItem 代表打开不同的视图,即我没有使用TabBarController

我的问题是视图加载我需要默认选择第一个选项卡。我们可以设置 TabBar 中的任何属性以使其选中吗?

谢谢。

【问题讨论】:

标签: ios objective-c swift uitabbar


【解决方案1】:

此代码将有效[tabBar setSelectedItem:[tabBar.items objectAtIndex:0]];

【讨论】:

    【解决方案2】:

    如果使用tabbar而不是tabbarcontroller设置默认选择,则在swift中

    var tabbar:CustomTabBar?//if declare like this
    tabbar!.selectedItem = self.tabbar!.items![0] as? UITabBarItem
    

    let tabbar = UITabBar()//if declare and initilize like this
    tabbar.selectedItem = self.tabbar.items![0] as? UITabBarItem
    

    【讨论】:

    • 会崩溃并显示 不允许直接修改由标签栏控制器管理的标签栏。
    【解决方案3】:

    设置 tabbar.selectedItem=0;在 viewWillAppear 中,所以当视图出现时,它会默认选择第一个选项卡。

    【讨论】:

    • 它不工作...... [tabBar setSelectedItem: 我已经使用 IB 来创建 TabBar。
    【解决方案4】:
    [self.tabBar setSelectedItem:self.tabBar.items[0]];
    

    self.tabBar.selectedItem = self.tabBar.items[0];
    

    selectedItem 属性需要 TabBarItem 而不是索引。因此,为第一个选项卡提供索引 0 中的 tabbaritem。

    那就错了:tabbar.selectedItem=0;

    您也可以选择其他选项卡。快乐编码

    【讨论】:

      猜你喜欢
      • 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
      相关资源
      最近更新 更多