當我嘗試在UIViewController
的子類中將UITabBarDelegate設置爲self時,遇到應用程序崩潰問題。我有一個UITabBarViewController
與幾個TabItems鏈接到視圖控制器。其中一個視圖控制器是HomeViewController
。我在HomeViewController
以下代碼:將UITabBarDelegate設置爲UIViewController時,應用程序崩潰
class HomeViewController: UIViewController, UITabBarDelegate {
override func viewDidLoad() {
super.viewDidLoad()
self.tabBarController?.tabBar.translucent = false
self.extendedLayoutIncludesOpaqueBars = true
self.tabBarController?.tabBar.delegate = self //This is causing crash
}
}
如果我刪除self.tabBarController?.tabBar.delegate = self
行一切工作正常,我的TabBar表現不如預期,但是當我重新添加該行出現以下崩潰:
ibc++abi.dylib: terminating with uncaught exception of type NSException
不完全確定如何解決此問題。在SO上發現了一些其他的答案,但他們似乎還不清楚該過程是怎麼做的。
謝謝!
捕獲異常,並打印使用此 '打印(exception.localizedDescription)異常的描述' 那麼請告訴它說什麼 –
你UITabBarViewController已經委託給你的UITabBar 。爲什麼你需要將委託設置爲另一個viewController? –
我有一個在HomeViewController中的方法,我想在tabBar項目「Home」被觸摸時執行。有一個更好的方法嗎? –