我正在创建一个 Cocoa web 浏览器,我注意到如果 webview 加载一个 nil 位置,它只会加载 about:home。由于我没有设置它,页面只是显示为白色。有没有办法可以改变 about:home 的样子。即使它是一个简单的 .rtf 文件什么的。
我环顾四周,但没有看到任何方法可以做到这一点。我是否想创建一个 NSURL 并将其设置为任何文件?
谢谢。哦,如果需要代码,我很乐意添加它。
我正在创建一个 Cocoa web 浏览器,我注意到如果 webview 加载一个 nil 位置,它只会加载 about:home。由于我没有设置它,页面只是显示为白色。有没有办法可以改变 about:home 的样子。即使它是一个简单的 .rtf 文件什么的。
我环顾四周,但没有看到任何方法可以做到这一点。我是否想创建一个 NSURL 并将其设置为任何文件?
谢谢。哦,如果需要代码,我很乐意添加它。
尝试这样的事情:
// Inside your App Delegate
-(void)applicationDidFinishLaunching:(NSNotification *)notification {
// Assuming WebView is called myWebView
NSString *currentURL = [myWebView mainFrameURL];
if(!currentURL) {
NSString *homeResource = [[NSBundle mainBundle] pathForResource:@"home" ofType:@"html" inDirectory:@"default"];
NSURL *homeURL = [NSURL fileURLWithPath:homeResource];
NSURLRequest *request = [NSURLRequest requestWithURL:homeURL];
[myWebView loadRequest:request];
}
}
您需要在项目资源部分的名为default的文件夹中拥有一个名为home.html的预制文件。
我想这并不完全取代about:home
,但您也可以随时检查about:home
并适当地处理它。