[英]tabBarController is nil; can't change selectedIndex on viewDidLoad
[英]I can't change tabBar SelectedIndex
我嘗試根據選定的按鈕標簽更改 Tabbar 選定的項目。但沒有任何反應。 這是我的按鈕控制 class。
class ButtonControl {
public func controlMoreButtons(sender:UIButton){
let board = UIStoryboard.init(name: "Main", bundle: nil)
let tabbar = board.instantiateViewController(identifier: "mainTabBar") as! MainTabBarController
let tag = sender.tag
switch tag {
case 1:
tabbar.selectedIndex = 2
print("1")
case 2:
print("2")
case 3:
print("3")
default:
print("unknown")
}
}
}
這是我的按鈕操作:
@IBAction func seeMoreButtonClicked(_ sender: UIButton) {
let buttonControl = ButtonControl()
buttonControl.controlMoreButtons(sender: sender)
}
1-添加
class ButtonControl {
weak var tab:UITabBarController?
2- 然后
let buttonControl = ButtonControl()
buttonControl.tab = self.tabBarController
3- 最后
tab.selectedIndex = sender.tag
並完全刪除這部分,因為它是一個新實例
let board = UIStoryboard.init(name: "Main", bundle: nil)
let tabbar = board.instantiateViewController(identifier: "mainTabBar") as! MainTabBarController
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.