0

我像这样加载我的html数据:

[webView loadData:htmlData MIMEType:@"text/html" textEncodingName:@"UTF-8" baseURL:url];

但是当被调用时:

[WebView goBack];

webView 无法返回该 html 页面。

我应该怎么办 ?我喜欢任何回应。

4

3 回答 3

2

如果您在 UIWebView 中的初始页面不是远程页面(如 www.yahoo.com)而只是一个本地 html 文件,则在单击此第一页中的任何链接后,您将被重定向,但goBack方法将无法返回到第一个初始页面(html 文件)。你可以使用小技巧来做到这一点。UIWebView 有一个只读的 BOOL 参数canGoBack,表示返回的可能性。它通常用于禁用/启用“返回”按钮。我正在使用这样的东西:

- (void) userPressedGoBackButton {
    if ([self.webView canGoBack]) {
            [self.webView goBack];
        } else {
            [self.webView loadData:htmlData MIMEType:@"text/html" textEncodingName:@"UTF-8" baseURL:url];
    }
}
于 2014-05-05T07:52:31.530 回答
0

我有同样的问题。我自己的解决方案是创建一个按钮以返回缓存的 html 数据页面。这个按钮调用了一个方法,在viewDidLoad中也调用了这个方法来初始化webview。

我的案例是从网站加载 rss 数据,然后创建 html 字符串,该字符串使用 loadHTMLString 与 webview 一起显示。这个html页面有一些链接,点击链接后,返回按钮可以正常使用,但是无法跳转到第一页——rss显示的页面。

于 2013-01-05T12:38:48.027 回答
-1

请尝试这样的事情:

 NSString *urlAddress = @"http://www.stackoverflow.com";

 NSURL *url = [NSURL URLWithString:urlAddress];

 NSURLRequest *requestObj = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:60];

 [self.webview loadRequest:requestObj];

然后尝试您的后退导航:

 [self.webview goBack]; 
于 2011-04-27T08:26:58.030 回答