通用尝试显示不同的nib文件

时间:2013-11-21 03:00:56

标签: ios interface-builder

Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIApplication 0xa46e6a0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key view.'

过去几天我一直在研究这个问题,但我还没有找到能让我的应用程序运行的答案。

我有一个带有两个nib文件的通用应用程序(一个用于手机,一个用于打击垫),无论我改变什么,我都会遇到此运行时错误。我在Interface Builder中对连接进行了三次检查。我还分别为手机和手柄定义了主要接口。

这就是我AppDelegate.m的样子:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:    (NSDictionary *)launchOptions
{
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];

ViewController *viewController;

if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
    viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
}else {
    viewController = [[ViewController alloc] initWithNibName:@"ViewController-iPad" bundle:nil];
}

self.window.rootViewController = viewController;
[viewController release];

[self.window makeKeyAndVisible];
return YES;
}

1 个答案:

答案 0 :(得分:1)

我想建议检查ViewController的xib文件。

  1. 文件所有者的自定义类是否设置为ViewController?
  2. 并查看连接到文件所有者的插座?
  3. 然后再试一次。