当我尝试在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”被触摸时执行。有一个更好的方法吗? –