在UITabbar中隐藏项目?

时间:2018-11-08 06:46:17

标签: ios uitabbar

这是隐藏/显示UITabbar元素的一种方法吗?我知道我可以删除和添加,但是隐藏呢?稍后我可能需要再次显示。

tabBar1.items!.remove(at: 1)

2 个答案:

答案 0 :(得分:1)

您无法隐藏/显示UITabBarItem。原因是UITabBarItem继承自UIBarItem,而后者进一步继承自NSObject。因此,在任何继承级别中都没有UIView(包含isHidden属性)类。

答案 1 :(得分:0)

如果为tabBar项提供了hide / show属性,则tabBar中将有一个空白,这将给用户带来糟糕的UI体验。因此,您不能像上面提到的Aditya那样隐藏/显示tabBarItem。

但是,如果要最初添加tabBarItem并仅在一段时间后才启用它,则将其以禁用状态添加到tabBar中,如下例所示。

let tabBar = UITabBar(frame: CGRect(x: 0.0, y: 0.0, width: 320.0, height: 44.0))

let tabItem1 = UITabBarItem(tabBarSystemItem: .history, tag: 0) 

tabItem1.isEnabled = false

let tabItem2 = UITabBarItem(tabBarSystemItem: .favorites, tag: 1)        

tabBar.setItems([tabItem1, tabItem2], animated: true)

//Enable your tabItem1 when needed
tabBar.items![0].isEnabled = true