android webview 重定向 多次load问题,解决webview 第二次调用loadUrl页面不刷新的问题...
一個需求,當點擊button按鈕時,希望加載另一個url。
以下方法可以成功!
@override
public void onclick(view view) {
webview.loadurl(url);
webview.loadurl( "javascript:window.location.reload( true )" );
}
親測管用!
補充知識:webview.loadurl使用誤區
當使用loadurl加載網頁的時候,有時候會出現調用系統瀏覽器加載網頁的現象,網上大部分的解決方案是 :
webview.setwebviewclient(new webviewclient() {
public boolean shouldoverrideurlloading(webview view, string url)
{
view.loadurl(url);
return true;
}
}
這確實可以達到在當前webview加載網頁的效果,但是卻做了多余的工作,以及不合理的返回值。
實際上,如果你只需要避免啟動系統瀏覽器來加載頁面的情況,只需要這么寫就可以了
webview.setwebviewclient(new webviewclient());
完全不需要另外寫個類繼承webviewclient,然后在重寫它的方法。
當應用場景更復雜的時候,你就能發現網上提供的方法的弊端了:
url存在重定向,無法回退
shouldoverrideurlloading(webview view, string url)
的返回值決定了webview是否自動處理該url,也就是是否加載。當返回true時,由程序處理,當返回false時,webview會自己處理,也就是相當于自動執行了loadurl方法。
以上這篇解決webview 第二次調用loadurl頁面不刷新的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持萬仟網。
總結
以上是生活随笔為你收集整理的android webview 重定向 多次load问题,解决webview 第二次调用loadUrl页面不刷新的问题...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android 代码片段,Android
- 下一篇: OPPO尝鲜android版本更新,安卓