我加载我的html数据:
[webView loadData:htmlData MIMEType:@"text/html" textEncodingName:@"UTF-8" baseURL:url];
但是当被召唤时:
[WebView goBack];
webView无法返回该html页面。
我该怎么办? 我赞赏任何回应。
答案 0 :(得分: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];
}
}
答案 1 :(得分:0)
我有同样的问题。我自己的解决方案是创建一个按钮以返回缓存的html数据页面。此按钮调用一个方法,该方法也在viewDidLoad中调用以初始化webview。
我的情况是从网站加载rss数据,然后创建html字符串,使用loadHTMLString与webview一起显示。这个html页面上有一些链接,点击链接后,goback按钮工作正常,但无法进入第一页 - rss显示页面。
答案 2 :(得分:-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];