我是Xcode的新手。我正在使用Xcode 5.1.1。在OS X 10.9.2下。 我想做一个非常简单的Mac应用程序,以了解如何在启动时在WebView中加载URL。在阅读了几个来源(包括来自StackOverflow的问题)之后,我尝试了大约10种不同的方法并完成了相同的结果 - 在Build& Run之后,屏幕上没有窗口。错误消息是:
:*由于未捕获的异常而终止应用程序 ' NSInvalidUnarchiveOperationException',原因:' * - [NSKeyedUnarchiver decodeObjectForKey:]:无法解码类的对象(WebView)'
libc ++ abi.dylib:以未捕获的类型异常终止 NSException
我做了什么:
在IB中我创建了WebView窗口并创建了一个插座zzz(我试图从AppDelegate按住Ctrl键拖动到WebView,反之亦然)。 所以这是我完成的代码:
// AppDelegate.h
#import <Cocoa/Cocoa.h>
#import <WebKit/WebKit.h>
@interface AppDelegate : NSObject <NSApplicationDelegate>
@property (assign) IBOutlet NSWindow *window;
@property (retain, nonatomic) IBOutlet WebView *zzz;
@end
// AppDelegate.m
#import "AppDelegate.h"
@implementation AppDelegate
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
[self.zzz setMainFrameURL:@"http://www.google.com/"];
// I tried to put this code into awakeFromNib procedure too
}
@end
我尝试使用applicationDidFinishLaunching / awakeFromNib中的代码,如下所示:
NSString *urlAddress = @"http://www.google.com/";
NSURL *url = [NSURL URLWithString:urlAddress];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
[[self.zzz mainFrame] loadRequest:requestObj];
但我明白这与[self.zzz setMainFrameURL:@&#34; http://www.google.com/&#34;];
相同同样的错误! Strrange!怎么了?
感谢。
答案 0 :(得分:7)
您尚未将Webkit Framework
添加到项目中。转到Project -> Target -> Build Phases
,然后在Link Binary with Libraries
部分添加Webkit framework
。