[android进阶]webview控件的使用
2015-04-29 19:35
429 查看
给学姐做的一个例子,测试学姐写的移动端HTML页面,这里简单记录一下,方便以后自己查看。
这里网址换成sina.com。
直接上代码,注释也比较详细,应该能看得懂。
为了更好的支持用户体验,可以添加以下几个属性:
设置加入javascript:该属性在websetting中。
判断页面加载过程,使用progressDialog
使用缓存,优先使用缓冲加载
源码下载
效果图
这里网址换成sina.com。
WebView
Webview是一个用来显示网页的控件,可以加载网络的资源,也可以加载本地资源。直接上代码,注释也比较详细,应该能看得懂。
[code]public class MainActivity extends Activity { //定义webview private WebView mWebView; //定义加载的url资源 private String url="http://sina.cn/?from=wap"; //定义加载框 private ProgressDialog dialog; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mWebView=(WebView) findViewById(R.id.webview); //获取焦点,防止页面中有输入框 mWebView.requestFocus(); // 覆盖WebView默认通过第三方或者是系统浏览器打开网页的行为,使得网页可以在WebVIew中打开 mWebView.setWebViewClient(new WebViewClient(){ //返回值是true的时候控制网页在WebView中去打开,如果为false调用系统浏览器或第三方浏览器去打开 public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } }); WebSettings settings = mWebView.getSettings(); //启用支持JavaScript settings.setJavaScriptEnabled(true); //WebView加载页面优先使用缓存加载 settings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK); // WebView加载web资源,加载本地资源"file:///……" mWebView.loadUrl(url); mWebView.setWebChromeClient(new WebChromeClient(){ @Override public void onProgressChanged(WebView view, int newProgress) { if(newProgress==100){ //网页加载完毕,关闭ProgressDialog closeDialog(); }else{ //网页正在加载,打开ProgressDialog openDialog(newProgress); } } //打开ProgressDialog private void openDialog(int newProgress) { if(dialog==null){ dialog=new ProgressDialog(MainActivity.this); dialog.setTitle("正在加载!"); dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); dialog.setProgress(newProgress); dialog.show(); }else{ dialog.setProgress(newProgress); } } //关闭ProgressDialog private void closeDialog() { if(dialog!=null&&dialog.isShowing()){ dialog.dismiss(); dialog=null; } } }); } //处理返回按键,返回上一个页面而不是退出程序 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode==KeyEvent.KEYCODE_BACK){ if(mWebView.canGoBack()){ //返回上一页面 mWebView.goBack(); return true; }else{ //退出程序 System.exit(0); } } return super.onKeyDown(keyCode, event); } }
为了更好的支持用户体验,可以添加以下几个属性:
设置加入javascript:该属性在websetting中。
[code]WebSettings settings = mWebView.getSettings(); settings.setJavaScriptEnabled(true);//启用支持JavaScript
判断页面加载过程,使用progressDialog
使用缓存,优先使用缓冲加载
settings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
源码下载
相关文章推荐
- Android中WebView控件的使用
- Android编程 - WebView控件基本使用方法
- webView控件基本使用(android)
- webView控件基本使用(android)
- Android中WebView控件的基本使用
- Android高手进阶教程(二十八)之---Android ViewPager控件的使用(基于ViewPager的横向相册)!!!
- Android高手进阶教程(二十八)之---Android ViewPager控件的使用(基于ViewPager的横向相册)!!!
- Android高手进阶教程(二十八)之---Android ViewPager控件的使用(基于ViewPager的横向相册)!!!
- Android高手进阶教程(二十八)之---Android ViewPager控件的使用(基于ViewPager的横向相册)!!!
- Android高手进阶教程(二十八)之---Android ViewPager控件的使用(基于ViewPager的横向相册)!!!
- Android开发---WebView控件的使用
- 【Android】Web开发之使用WebView控件展示Web页面
- 使用chrome查看Android webView各个元素的控件方法
- 使用Android的WebView控件调用本地代码
- cocos2d-x 中使用的android控件详细说明之webview
- Android基础控件使用细节——WebView
- Android 使用WebView控件展示SVG图
- Android控件webview使用
- Android 下拉刷新控件SwipeRefreshLayout结合WebView使用
- Android使用webview控件加载本地html,通过Js与后台Java实现数据的传递