以下是我的应用的布局。
目前在我的AppDelegate.m中我有:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions
{
LoginViewController *_loginViewController = [[LoginViewController alloc] initWithNibName:@"LoginView" bundle:[NSBundle mainBundle]];
self.loginViewController = _loginViewController;
[_loginViewController release];
[_window addSubview:[loginViewController view]];
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
// Override point for customization after application launch.
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPhone" bundle:nil] autorelease];
} else {
self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPad" bundle:nil] autorelease];
}
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
return YES;
}
我的LoginView.xib将其文件所有者定义为LoginViewController。
我最初得到一个错误说明:原因:' - [UITableViewController loadView]加载了“LoginView”笔尖,但没有得到UITableView。'“
我将UITableViewController更改为UIViewController,我能够在没有错误的情况下运行应用程序。现在唯一的问题是我的LoginViewController没有加载。我看到空白的灰色ViewController_iPad.xib加载。
我在这里缺少什么?
我可以发布任何其他有用的代码。
提前致谢!
答案 0 :(得分:1)
您应该将窗口的根视图控制器设置为self.loginViewController
。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions
{
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
self.loginViewController = [[LoginViewController alloc] initWithNibName:@"LoginView" bundle:[NSBundle mainBundle]];
[self.loginViewController release];
self.window.rootViewController = self.loginViewController;
[self.window makeKeyAndVisible];
return YES;
}