在我的应用程序中,我试图做这样的事情:
class tabBarController : UITabBarController {
...
func example (){
let navController : UINavigationController = UINavigationController(rootViewController: calendarVC) //calendarVC is a UIViewController
guard var VCs = self.viewControllers as [UIViewController]? else{
self.setViewControllers([navController], animated: false)
return
}
self.setViewControllers(VCs.append(navController), animated: false)
}
...
}
但是在函数的最后一行我收到了一个错误:
无法将'()'类型的值转换为预期的参数类型'[UIViewController]?
我该如何解决这个问题?感谢。
答案 0 :(得分:3)
append
改变数组,而不是返回添加了值的新数组。将最后一行拆分为2:
VCs.append(navController)
self.setViewControllers(VCs, animated: false)