首页 文章

如何禁用标签栏项?

提问于
浏览
2

对于某个用例,是否可以在整个应用程序的标签栏上隐藏或禁用标签栏项?

示例:当用户登录并且他们没有“经理”角色时,最后一个标签栏项将在整个应用程序中隐藏 . 当他们再次作为管理员登录时,最后一个标签栏将被启用而不是隐藏 .

2 回答

  • 3

    如果你在UITabBarController的源文件中,只需在viewDidLoad方法中添加以下代码即可禁用最后一项

    下面的代码假设您在标签栏中有UITabBarItem项 . 否则你知道它是什么类型的项目,所以你可以相应地投射

    if let items = tabBar.items as? [UITabBarItem] {
      if items.count > 0 {
        let itemToDisable = items[items.count - 1]
        itemToDisable.enabled = false
      }
    }
    
  • 0

    更好的代码(在Swift 4中):

    tabBar.items?.forEach { $0.isEnabled = false }
    

相关问题