这很有效:
UINavigationController *nc =
[[UINavigationController alloc]
initWithNavigationBarClass:[GTScrollNavigationBar class]
toolbarClass:[UIToolbar class]];
nc.viewControllers = @[firstPage];
self.window.rootViewController = nc;
但 不 工作:
UINavigationController *nc =
[[UINavigationController alloc]
initWithNavigationBarClass:[GTScrollNavigationBar class]
toolbarClass:[UIToolbar class]];
self.window.rootViewController = nc;
self.window.rootViewController.viewControllers = @[firstPage]; // ERROR
怎么会这样?感谢
答案 0 :(得分:2)
self.window.rootViewController.viewControllers = @[firstPage];
未编译,因为声明了rootViewController
的{{1}}属性
作为(通用)UIWindow
(没有UIViewController
属性),而不是viewControllers
。
编译器不“知道”根视图控制器实际上是导航 在你的情况下控制器。
所以要么你在第一个代码块中继续,要么你必须添加一个显式的强制转换:
UINavigationController