WebView的基本使用

来源:互联网 发布:手机订火车票软件 编辑:程序博客网 时间:2024/06/11 19:25

webView是一个可以显示网页的控件,他的网页渲染引擎和Safari、Chrome一样都是Webkit(一个开源的浏览器引擎)。

  使用webView来开发应用,有几个很明显的优势:

  1、搭建Java和Javascript之间交互的桥梁

  2、跨平台,网页代码编写一次,即可以在任何支持web的平台上运行,如adnroid  iphone win节省开发成本,提高开发效率。

  3、资源利用最大化,web开发人员只用很少的学习成本即可以使用webView开发。

  4、应用程序维护成本大大降低,只用维护服务器端代码即可。

  即有本地应用的功能,又有B/S应用(Browser/Server浏览器/服务器)模式的优势,可以说是二者的结合体

public class MainActivity extends Activity {private EditText et_path;private WebView webView;private ProgressBar pb;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);et_path = (EditText) findViewById(R.id.et_path);webView = (WebView) findViewById(R.id.webView);pb = (ProgressBar) findViewById(R.id.pb);initSetting();}private void initSetting() {WebSettings settings = webView.getSettings();settings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);settings.setDefaultZoom(ZoomDensity.FAR);settings.setDefaultFontSize(10);settings.setBuiltInZoomControls(true);webView.setWebViewClient(new WebViewClient());//webView.setWebChromeClient(new WebChromeClient() {//@Override//public void onProgressChanged(WebView view, int newProgress) {//super.onProgressChanged(view, newProgress);//pb.setProgress(newProgress);//if (newProgress == 100) {//pb.setVisibility(View.GONE);//}//}//});}@Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {switch (keyCode) {case MotionEvent.BUTTON_BACK:if(webView.canGoBack()){webView.goBack();}else{finish();}break;default:break;}return super.onKeyDown(keyCode, event);}public void start(View v) {String path = et_path.getText().toString().trim();webView.loadUrl(path);pb.setVisibility(View.VISIBLE);}}


0 0
原创粉丝点击