Android基礎控制項使用細節——WebView
在開發中經常會出現莫名其妙的問題,做個記錄,方便以後匯總,該系列將不定期更新!
WebView是android的一個組件,它的核心是基於開源WebKit引擎。如果我們對WebView進行一些美化、封裝,可以非常輕鬆的開發出自己的瀏覽器。
1、禁止超連結的時候調用其他瀏覽器
今天調用網頁顯示控制項,一組輪播圖,根據伺服器返回的URL串連做網頁顯示,同樣的格式,有的可以正常在WebView中開啟,有的會莫名其妙的彈出了瀏覽器選擇框。很鬱悶!
搜尋了一下,找到解決方案,兩步搞定,如下:
step1:首先是頁面控制項初始化部分
String url = getIntent().getStringExtra("url");WebView webview = (WebView) findViewById(R.id.webView);webview.loadUrl(url);//如果希望點選連結由自己處理,而不是新開Android的系統browser中響應該連結。//需要給WebView添加一個事件監聽對象(WebViewClient),並重寫shouldOverrideUrlLoading方法webview.setWebViewClient(new MyWebViewClient());
step2:添加一個監聽對象
private class MyWebViewClient extends WebViewClient { public boolean shouldOverrideUrlLoading(WebView view, String url) {view.loadUrl(url); return true;};}
2、捲軸設定
webview.setHorizontalScrollBarEnabled(true);//設定水平捲軸,true表示允許使用webview.setVerticalScrollBarEnabled(false);//設定豎直捲軸 ,false表示禁止使用
3、禁止橫豎屏切換的時候,重新載入網頁
需要在AndroidManifest.xml中添加android:configChanges="keyboardHidden|orientation|screenSize"
4、開啟Javascript支援
webview.getSettings().setJavaScriptEnabled(true);// 開啟Javascript支援
5、設定可以自動載入圖片
webview.getSettings().setLoadsImagesAutomatically(true);// 設定可以自動載入圖片