我有一个TabBarController,它具有禁用特定标签栏项的功能。当我在控制器的ViewDidLoad方法中调用此函数时,一切正常。 现在,我有了一个带有按钮的视图控制器,该按钮触发了到标签栏控制器的通知以调用disable方法,但是什么也没有发生,我仍然可以点击标签栏项。
这在我的Tab Bar Controller类中:
override func viewDidLoad() {
super.viewDidLoad()
NotificationCenter.default.addObserver(self, selector: #selector(disableTrackerItem), name: .didFinishedTracking, object: nil)
// Do any additional setup after loading the view.
}
@objc func disableTrackerItem() {
if let items = tabBar.items as? [UITabBarItem] {
items[1].isEnabled = false
}
}
extension Notification.Name {
static let didFinishedTracking = Notification.Name("didFinishedTracking")}
我用日志检查了通知是否有效,但一切正常。
有人可以帮我吗?