webview 加载某些网页失败的处理办法(第七条)
1、添加權(quán)限:AndroidManifest.xml中必須使用許可"android.permission.INTERNET",否則會出Web page not available錯誤。
2、在要Activity中生成一個WebView組件:WebView webView = new WebView(this);
3、設(shè)置WebView基本信息:
如果訪問的頁面中有Javascript,則webview必須設(shè)置支持Javascript。
webview.getSettings().setJavaScriptEnabled(true);
觸摸焦點起作用
requestFocus();
取消滾動條
this.setScrollBarStyle(SCROLLBARS_OUTSIDE_OVERLAY);
4、設(shè)置WevView要顯示的網(wǎng)頁:
互聯(lián)網(wǎng)用:webView.loadUrl("http://www.google.com");
本地文件用:webView.loadUrl("file:///android_asset/XX.html");本地文件存放在:assets文件中
5、如果希望點擊鏈接由自己處理,而不是新開Android的系統(tǒng)browser中響應(yīng)該鏈接。
給WebView添加一個事件監(jiān)聽對象(WebViewClient)
并重寫其中的一些方法
shouldOverrideUrlLoading:對網(wǎng)頁中超鏈接按鈕的響應(yīng)。
當(dāng)按下某個連接時WebViewClient會調(diào)用這個方法,并傳遞參數(shù):按下的url
onLoadResource
onPageStart
onPageFinish
onReceiveError
onReceivedHttpAuthRequest
6、如果用webview點鏈接看了很多頁以后,如果不做任何處理,點擊系統(tǒng)“Back”鍵,整個瀏覽器會調(diào)用finish()而結(jié)束自身,如果希望瀏覽的網(wǎng)頁回退而不是退出瀏覽器,需要在當(dāng)前Activity中處理并消費掉該Back事件。
覆蓋Activity類的onKeyDown(int keyCoder,KeyEvent event)方法。
public boolean onKeyDown(int keyCoder,KeyEvent event){
if(webView.canGoBack() && keyCoder == KeyEvent.KEYCODE_BACK){
webview.goBack(); //goBack()表示返回webView的上一頁面
return true;
}
return false;
}
7、問題描述:
利用webView打開twitter的連接時不能成功,顯示一片空白.
解決方式:
為webView設(shè)置().setDomStorageEnabled
即:mWebView.getSettings().setDomStorageEnabled(true);
總結(jié)
以上是生活随笔為你收集整理的webview 加载某些网页失败的处理办法(第七条)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 根据数据库表gengxin实体类_ASP
- 下一篇: java定时器的使用