2

我正在创建一个 Cocoa web 浏览器,我注意到如果 webview 加载一个 nil 位置,它只会加载 about:home。由于我没有设置它,页面只是显示为白色。有没有办法可以改变 about:home 的样子。即使它是一个简单的 .rtf 文件什么的。

我环顾四周,但没有看到任何方法可以做到这一点。我是否想创建一个 NSURL 并将其设置为任何文件?

谢谢。哦,如果需要代码,我很乐意添加它。

4

1 回答 1

1

尝试这样的事情:

// 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并适当地处理它。

于 2013-02-28T12:14:45.357 回答