我正在使用storyboard来创建所有ui布局。
我有一个表格视图控制器,我已经使用下面的代码删除了应用程序,正常用户需要隐藏一个标签栏项目。
self.tabBarController?.viewControllers?.remove(at: 4)
但是当Admin登录时(我通过比较电子邮件auth进行检查)应该添加上面删除的表视图控制器,所以当我使用下面的代码添加时
self.tabBarController?.viewControllers?.insert(AdminProductUploaderTableVC(), at: 4)
仅添加空白空格。
AdminProductUploaderTableVC
在Storyboard上有导航控制器。
那么如何为管理员加载现有的表视图控制器?
由于
答案 0 :(得分:1)
你做错了什么?
self.tabBarController?.viewControllers?.insert(AdminProductUploaderTableVC(), at: 4)
正在创建像AdminProductUploaderTableVC()
这样的对象,而不是从故事板加载。
First Goto Storyboard并将故事板标识符添加到AdminProductUploaderTableVC
转到AdminProductUploaderTableVC
并添加以下方法
class func viewController() -> AdminProductUploaderTableVC {
return UIStoryboard.init(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "AdminProductUploaderTableVC") as! AdminProductUploaderTableVC
}
现在用
替换你的行self.tabBarController?.viewControllers?.insert(UINavigationController(rootViewController:AdminProductUploaderTableVC.viewController()), at: 4)
希望它有用