1. importandroid.app.Activity;
  2. importandroid.graphics.Color;
  3. importandroid.os.Bundle;
  4. importandroid.os.Handler;
  5. importandroid.view.Menu;
  6. importandroid.view.View;
  7. importandroid.webkit.WebChromeClient;
  8. importandroid.webkit.WebView;
  9. importandroid.webkit.WebViewClient;
  10. importandroid.widget.LinearLayout;
  11. importandroid.widget.ProgressBar;
  12. importandroid.widget.TextView;
  13. publicclassMainActivityextendsActivity{
  14. Handlerhandler;
  15. WebViewwv;
  16. TextViewtextView;
  17. ProgressBarprogressBar;
  18. @Override
  19. publicvoidonCreate(BundlesavedInstanceState){
  20. super.onCreate(savedInstanceState);
  21. //requestWindowFeature(Window.FEATURE_NO_TITLE);
  22. //getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
  23. //WindowManager.LayoutParams.FLAG_FULLSCREEN);
  24. LinearLayoutrootViewLayout=newLinearLayout(this);
  25. rootViewLayout.setOrientation(LinearLayout.VERTICAL);
  26. textView=newTextView(this);
  27. textView.setTextColor(Color.RED);
  28. //生成水平进度条
  29. progressBar=newProgressBar(this,null,android.R.attr.progressBarStyleHorizontal);
  30. wv=newWebView(this);
  31. rootViewLayout.addView(textView);
  32. rootViewLayout.addView(progressBar);
  33. rootViewLayout.addView(wv);
  34. setContentView(rootViewLayout);
  35. wv.getSettings().setAllowFileAccess(true);
  36. wv.getSettings().setJavaScriptEnabled(true);
  37. //这里吐槽一下这J8网站写你妹的排队,排你大爷
  38. wv.loadUrl("http://www.12306.cn");
  39. wv.setWebViewClient(newWebViewClient(){
  40. @Override
  41. publicvoidonPageFinished(WebViewview,Stringurl){
  42. //TODOAuto-generatedmethodstub
  43. super.onPageFinished(view,url);
  44. //页面下载完毕,却不代表页面渲染完毕显示出来
  45. //WebChromeClient中progress==100时也是一样
  46. if(wv.getContentHeight()!=0){
  47. //这个时候网页才显示
  48. }
  49. }
  50. @Override
  51. publicbooleanshouldOverrideUrlLoading(WebViewview,Stringurl){
  52. //TODOAuto-generatedmethodstub
  53. //自身加载新链接,不做外部跳转
  54. view.loadUrl(url);
  55. returntrue;
  56. }
  57. });
  58. wv.setWebChromeClient(newWebChromeClient(){
  59. @Override
  60. publicvoidonProgressChanged(WebViewview,intnewProgress){
  61. //TODOAuto-generatedmethodstub
  62. super.onProgressChanged(view,newProgress);
  63. //这里将textView换成你的progress来设置进度
  64. //if(newProgress==0){
  65. //textView.setVisibility(View.VISIBLE);
  66. //progressBar.setVisibility(View.VISIBLE);
  67. //}
  68. textView.setText(newProgress+"");
  69. textView.postInvalidate();
  70. progressBar.setProgress(newProgress);
  71. progressBar.postInvalidate();
  72. //if(newProgress==100){
  73. //textView.setVisibility(View.GONE);
  74. //progressBar.setVisibility(View.GONE);
  75. //}
  76. }
  77. });
  78. }
  79. @Override
  80. publicbooleanonCreateOptionsMenu(Menumenu){
  81. getMenuInflater().inflate(R.menu.activity_main,menu);
  82. returntrue;
  83. }
  84. }

更多相关文章

  1. Android中Dialog对话框使用总结及demo
  2. Android(安卓)设置dialog在底部显示
  3. android 全屏显示
  4. Android(安卓)Notification不显示时间
  5. Android(安卓)计算控件尺寸
  6. Android(安卓)微博布局风格
  7. android软键盘的显示与隐藏
  8. Android路径大全
  9. android创建设置页面

随机推荐

  1. android 控件使用集锦
  2. android layout布局属性
  3. 从0到1实现一个Android路由(4)——多模块
  4. android中的布局文件
  5. Ubuntu android NDK 配置
  6. android高仿小视频、应用锁、3种存储库、
  7. 动态添加TableRow
  8. android sdk 离线下载地址及对应映射关系
  9. Android(安卓)SDK 2.0安装、配置图文教程
  10. Android开发 准备工作