Как узнать UIWebView webViewDidFinishLoad, наконец, происходит в iOS?
Приложение Twitter показывает webView без панели инструментов. А затем, когда нажмите на ссылку на веб-странице, webView
показывает панель инструментов внизу.
Я закодировал как ниже, но я нашел webViewDidFinishLoad()
происходит несколько раз.
Как узнать webViewDidFinishLoad()
происходит наконец?
iNavigate = 0;
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
iNavigate ++;
NSLog(@"Navigate Count = %d", iNavigate);
if (iNavigate >1)
{
CGRect rect = self.webView.frame;
rect.size.height = rect.size.height - toolBarBrowser.frame.size.height;
self.webView.frame = rect;
self.toolBarBrowser.hidden = FALSE;
}
barButtonBack.enabled = (self.webView.canGoBack);
barButtonForward.enabled = (self.webView.canGoForward);
}
1 ответ
Решение
Ты можешь использовать (webview.isLoading)
знать UIWebView webViewDidFinishLoad происходит в конце концов или нет
- (void)webViewDidFinishLoad:(UIWebView *)webview {
if (webview.isLoading)
return;
else
{
CGRect rect = self.webView.frame;
rect.size.height = rect.size.height - toolBarBrowser.frame.size.height;
self.webView.frame = rect;
self.toolBarBrowser.hidden = FALSE;
barButtonBack.enabled = (self.webView.canGoBack);
barButtonForward.enabled = (self.webView.canGoForward);
}
}