将此复制到您的代码中
class HomeTabBarVC: UITabBarController {
var isIpad = false
let button = UIButton.init(type: .custom)
var index = 0
override func viewDidLoad() {
super.viewDidLoad()
self.delegate = self
APPDELEGATE.tabBar = self
}
}
extension HomeTabBarVC : UITabBarControllerDelegate {
override func tabBar(_ tabBar: UITabBar,didSelect item: UITabBarItem) {
print("the last selected index is : \(selectedIndex)")
APPDELEGATE.tabBarLastSelectedIndex = selectedIndex
print("the current selected index is : \(String(describing: tabBar.items?.index(of: item)))")
APPDELEGATE.tabBarCurrentSelectedIndex = tabBar.items?.index(of: item) ?? 0
}
}
在appdelegate中声明此变量,
var tabBar : UITabBarController?
,
问题与此类似。
tabBarController didSelect does not get called
optional func tabBarController(_ tabBarController: UITabBarController,didSelect viewController: UIViewController)
在iOS v3.0和更高版本中,选项卡栏控制器调用此方法,而不管所选视图控制器是否更改。此外,仅当用户点击选项卡栏时才调用它,而当您的代码以编程方式更改选项卡栏内容时,则不会调用该
。
本文链接:https://www.f2er.com/3147933.html