我正在尝试创建一个从带有三个按钮的主页开始的应用程序。按下的每个按钮都会切换到另一个视图。每个视图只是一个空白视图,上面有一个 UIWebView。当没有任何内容时,转换到每个页面都可以正常工作。但是,当我添加 UIWebview 和所有正确的代码时,转换到页面会导致应用程序崩溃并显示以下错误消息:
* 由于未捕获的异常“NSUnknownKeyException”而终止应用程序,原因:“[setValue:forUndefinedKey:]:此类与键 viewWeb 的键值编码不兼容。” * First throw call stack: (0x1c94012 0x10d1e7e 0x1d1cfb1 0xb7de41 0xaff5f8 0xaff0e7 0xb29b58 0x233019 0x10e5663 0x1c8f45a 0x231b1c 0xf67e7 0xf6dc8 0xf6ff8 0xf7232 0x259b 0x10e5705 0x192c0 0x19258 0xda021 0xda57f 0xd96e8 0x48cef 0x48f02 0x26d4a 0x18698 0x1befdf9 0x1befad0 0x1c09bf5 0x1c09962 0x1c3abb6 0x1c39f44 0x1c39e1b 0x1bee7e3 0x1bee668 0x15ffc 0x1e92 0x1dc5) libc++abi .dylib:终止调用抛出异常
我很肯定所有 UIWebView 代码都是正确的,因为我在一个新应用程序中测试了完全相同的代码,该应用程序只在单个视图上运行并且没有转换。但这是我用于过渡的代码:
- (IBAction)floorCatalog:(id)sender {
UIViewController* floorLampsViewController = [[UIViewController alloc] initWithNibName:@"floorLampsViewController" bundle:[NSBundle mainBundle]];
[self.view addSubview:floorLampsViewController.view];
}
- (void)dealloc {
[_floorLampsButton release];
[_tableLampsButton release];
[_wallLampsButton release];
[super dealloc];
}
- (void)viewDidUnload {
[self setFloorLampsButton:nil];
[self setTableLampsButton:nil];
[self setWallLampsButton:nil];
[super viewDidUnload];
}
这是我用于网络视图的代码:
@property (retain, nonatomic) IBOutlet UIWebView *viewWeb;
[self.viewWeb loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.bing.com"]]];
为什么这种情况不断发生?谢谢!