我有一个简单的小应用程序,我试图学习在OS X桌面应用程序中使用WebFrame。
WebFrame存在于通过单击主菜单nib窗口中的按钮打开的窗口内。
我试图在加载窗口时将一个简单的HTML字符串加载到WebView中,只是为了确保所有内容都正确连接。
这是窗口的h文件
#import <Cocoa/Cocoa.h>
#import <WebKit/WebKit.h>
@interface WebReportView : NSWindowController
@property IBOutlet WebView *webView;
@end
这里是m文件,包括我认为应加载HTML字符串的代码。
#import "WebReportView.h"
@implementation WebReportView
- (void)windowDidLoad {
[super windowDidLoad];
[[self.webView mainFrame]loadHTMLString:@"<html><head></head><body><h1>Foo</h1></body></html>" baseURL:nil];
}
@end
窗口加载得很好,我可以看到WebView,但内容没有加载到WebView中。大胆的#34; Foo&#34;不见了。
如果我尝试加载实际的网络内容,也会发生同样的事情:
NSURLRequest* request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.com"]];
[self.webView.mainFrame loadRequest:request];
没有任何东西被加载到WebView中。
我知道loadHTMLString(或loadRequest)方法正在被调用,因为我把NSLogs放在它之前和之后。
我错过了什么?
答案 0 :(得分:0)
确保您已创建WebView插座并建立所有连接。 确保已设置WebView Delegate
NSString *fullURL = @"http://www.google.com";
NSURL *url = [NSURL URLWithString:fullURL];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
[webUrl loadRequest:requestObj];