简短说明。
我有一个ContainerViewController
,我正在推动navigationStack
。
ContainerViewController
有2个孩子UIViewController
。 SlidePanelViewController
(幻灯片菜单)和CenterViewController
(内容),我的CenterViewController
是UITabBarController
,目前有2 UIViewController
。
我的菜单中有一个按钮,我需要更改UIViewController
中的tabBarController
。但是当我调用我的函数时没有任何反应。
这是我要调用的功能:
func premiumFormulaTapGesture() {
tabBarController?.selectedIndex = 1
}
(我也尝试将其设置为0和2.仍然没有结果。)我试着将self.
放在前面而没有任何运气。
我也尝试将其作为函数添加到我的ContainerViewController
中。但这似乎也不起作用。
以下是我设置UITabBarController
的方法:
var centerTabBarController: UITabBarController!
ViewDidLoad()
中的:
let tabBarController = UITabBarController()
let suggestionsVC = mySuggestions_VC()
let testVC = detaiLSuggestion_VC()
let controllers = [suggestionsVC,testVC]
tabBarController.setViewControllers(controllers, animated: false)
centerViewController = tabBarController
view.addSubview(tabBarController.view)
addChildViewController(tabBarController)
我的tabBarController
确实出现了。我可以手动点击它上面的2个按钮,它按预期在viewControllers
之间切换。我后来计划隐藏UITabBarController
,然后使用菜单。 UITabBarController
将成为我从菜单中更改UIViewController
的方法。
也只是为了澄清。我没有使用故事板。
非常感谢帮助我更改viewControllers
中tabBarController
的任何帮助!
答案 0 :(得分:0)
Phillip Mills还没有发布答案。所以我只是关闭了未解决的问题。
我的问题是有2个UITabBarControllers命名相同" tabBarController"将名称更改为" menuTabBarController"一切正常。
再次感谢Phillip Mills在评论中解决我的问题。