Swift:如何使标签视图控制器按钮不显示?

时间:2017-07-11 13:08:12

标签: ios swift swift3 uitabbarcontroller uitabbar

好的,我的所有视图控制器都由一个标签栏控制器管理,显然当您在故事板中连接控制器和Vcs之间的关系作为“视图控制器”时,标签栏上会出现一个按钮。然后可以通过标签栏控制器访问它们。

我的问题是我需要让一个VC成为视图控制器阵列,但不要显示在标签栏上的按钮中。它不应该被用户访问,但我需要能够使用selectedIndex

在代码中切换到该VC

我不知道该怎么做。我试过禁用按钮并执行

self.tabBar.items?[3].accessibilityElementsHidden = true

但是按钮仍然在标签栏上。如何在标签栏控制器的数组中使用VC但不在按钮中显示?

1 个答案:

答案 0 :(得分:0)

使用template <typename T> class Lazy { public: void _ctor(bool b); void _ctor(typename __enable_if<!std::is_same<T, bool>::value, T>::type); }; template <typename T> void Lazy<T>::_ctor(bool b) { std::cout << "bool " << b << std::endl; }; template <typename T> void Lazy<T>::_ctor(typename __enable_if<!std::is_same<T, bool>::value, T>::type t) { std::cout << "T " << t << std::endl; }; int main(int argc, char **argv) { Lazy<int> i; i._ctor(10); i._ctor(true); Lazy<bool> b; b._ctor(true); return 0; } 无法实现。

不是100%确定为什么你需要在该数组中拥有一个VC但在条形图上永远不可见,如果是这样的话,可以考虑继承UITabBarController

UITabBarController的{​​{1}}或viewControllers属性的更改将鼓励iOS重新加载组件,从而为您在TabBar中看到VC的原因。