簡單的概念,但它不工作。我在我的UIWebView
中有兩個按鈕,一個後退按鈕和一個前進按鈕。後退按鈕調用[self.webView goBack]轉發[self.webView goForward]。iOS - canGoForward和CanGoBack在webViewDidStartLoad中的問題
現在我想知道,如果UIWebView
可以回去。如果是這樣,那麼啓用後退按鈕,並讓它返回,對於前進按鈕也是如此。
-(void)webViewDidStartLoad:(UIWebView *)webView
{
if([self.webView canGoForward]) {
[forwardArrowBtn setEnabled:YES];
} else {
[forwardArrowBtn setEnabled:NO];
}
if([self.webView canGoBack]) {
[backArrowBtn setEnabled:YES];
} else {
[backArrowBtn setEnabled:NO];
}
}
問題是這不起作用的第一次加載。例如:我點擊UIWebView
中的鏈接,它會轉到頁面,但後退按鈕仍處於禁用狀態,無法點擊。直到我點擊另一個鏈接後,後退按鈕顯示啓用並開始工作。
第一次進入另一個頁面時,這種方式不起作用,只能在第二次使用?
這是一個解決更簡單的解決方案嗎?它確實有效,但是... – Romes 2012-03-06 22:52:52
你能展示......還是更好地解釋......? – Morkrom 2013-08-12 22:37:38
'webViewDidFinishLoad:'是檢查的正確位置。這個問題似乎是WebKit中的一個錯誤。有關詳細的解釋,請參見[http://stackoverflow.com/questions/18948373/why-is-uiwebview-cangoback-no-in-ios7 this SO question&answer] – Olie 2014-03-12 18:01:11