WebView 實現JS效果和a標籤的點擊事件

目前不少android app均可以顯示web頁面的界面,嵌入式開發,這個界面通常都是WebView這個控件加載出來的,學習該控件能夠爲你的app開發提高擴展性。javascript

先說下WebView的一些優勢:php

  1. 能夠直接顯示和渲染web頁面,直接顯示網頁
  2. webview能夠直接用html文件(網絡上或本地assets中)做佈局
  3. 和JavaScript交互調用
  4. 網頁標籤的點擊事件

效果:(網頁頂部是JS效果滾動,4個模塊能夠實現點擊事件,可看到信息提示)html

       

 

public class MainActivity extends Activity {

	public String URL = "http://bajie.zhangwoo.cn/app.php?
platform=android&appkey=5a379b5eed8aaae531df5f60b12100cfb6dff2c1&c=travel&a=home";
	WebView webView;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		webView = (WebView) findViewById(R.id.webview);
		webView.loadUrl(URL);
		initView();

	}
	@SuppressLint("SetJavaScriptEnabled") private void initView() {
		// TODO Auto-generated method stub
		webView.requestFocus();
		webView.setHorizontalScrollBarEnabled(true);
		webView.setVerticalScrollBarEnabled(true);
		WebSettings web = webView.getSettings();
		web.setJavaScriptEnabled(true);// 啓用支持javascript
		web.setBuiltInZoomControls(true);
		web.setSupportZoom(true); // 是否支持屏幕雙擊縮放,可是下邊的是前提
		web.setDefaultTextEncodingName("utf-8");// 設置編碼格式
		// 覆蓋WebView默認使用第三方或系統默認瀏覽器打開網頁的行爲,使網頁用WebView打開
		webView.setWebViewClient(new WebViewClient() {
			@Override
			public boolean shouldOverrideUrlLoading(WebView view, String url) {
				// TODO Auto-generated method stub
				// 返回值是true的時候控制去WebView打開,爲false調用系統瀏覽器或第三方瀏覽器

				if (url.indexOf("zwapp://showlist/?tab=zhoubian") != -1) {
					
					Toast.makeText(getApplicationContext(), "周邊遊", 1).show();
					
				} else if (url.indexOf("zwapp://showlist/?tab=gonglue") != -1) {
					
					Toast.makeText(getApplicationContext(), "旅遊攻略", 1).show();
				} else if (url.indexOf("zwapp://showlist/?tab=zhaiguo") != -1) {
					
					Toast.makeText(getApplicationContext(), "摘果", 1).show();
				} else if (url.indexOf("zwapp://showlist/?tab=gongyuan") != -1) {
					
					Toast.makeText(getApplicationContext(), "主題公園", 1).show();
					
				} else {

				}
				return true;

			}
		});

	}

}

 

記得加網絡權限java

<uses-permission android:name="android.permission.INTERNET"/>

 

源碼點擊下載:https://github.com/DickyQie/android-webviewandroid

相關文章
相關標籤/搜索