我是 Objective-C 和 iOS 的新手。我跟着UINavigationController。
在视频的前 2:30 分钟,他使用 AppDelegate 接口和实现,并且那里提供了一些我的应用程序中没有的代码。
在界面中他有:
@Class ViewController;
...
@property(strong, nonatomic) ViewController *viewController;
我没有。
而在 AppDelegate 的实现中,在他开始定义之前navigationViewController
,他有几行代码, didFinishLaunchingWithOption
比如:
self.windows = [[UIWindows alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
self.windows.rootViewController = self.viewController;
[self.windows makeKeyAndVisible]
return YES;
我收到了警告self.viewController
。
但我只有:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
return YES;
}
为了取消 NavigationViewController,他添加了这一行:
UINavigationController *navigationViewController = [[UINavigationController alloc] initWithRootViewController:self.viewController
self.windows.rootViewController = navigationViewController;
当我添加此代码时,我遇到了一个错误(self.viewController
最后警告)。当我运行项目时,它只是在顶部显示导航,但我之前创建的 TableView 消失了。你能帮我解决这个问题吗?我的模拟器是 5.1 版。