WebView使用

最近工作中,基本一直在用WebView,今天就把它整理下:

WebView 顾名思义,就是放一个网页,一个看起来十分简单,但是用起来不是那么简单的控件。

首先你肯定要定义,初始化一个webview,其实网上的例子很多,我这里就简单的把一些WebView 中可能会用到的的很重要的属性以及支持全屏播放视频该怎么实现的代码粘出来,直接放到项目中去就行了

首先需要添加权限:

 

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

 

private WebView webview;
webview = (WebView) findViewById(R.id.webview);  

1.直接打开浏览器使用

Uri uri = Uri.parse("http://baidu.com");
Intent inten - new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);

2.打开网页时不调用系统浏览器,而是在本WebView中显示

复制代码
mWebView.setWebViewClient(new WebViewClient(){
      @Override
      public boolean shouldOverrideUrlLoading(WebView view, String url) {
          view.loadUrl(url);
          return true;
      }
  });
复制代码
复制代码
myWebView.setWebViewClient(new WebViewClient() {

        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {

        //想在页面开始加载时有操作,在这添加
        super.onPageStarted(view, url, favicon);
        }

        @Override
        public void onPageFinished(WebView view, String url) {

            //想在页面加载结束时有操作,在这添加
            super.onPageFinished(view, url);
        }

        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
        //返回值是true的时候WebView我打开,为false则系统浏览器或第三方浏览器打开。如果要下载页面中的游戏或者继续点击网页中的链接进入下一个网页的话,重写此方法下,不然就会跳到手机自带的浏览器了,而不继续在你这个webview里面展现了 
        return true;
        }
        @Override  

        public void onReceivedError(WebView view, int errorCode,  

        String description, String failingUrl) {  

        //想在收到错误信息的时候,执行一些操作,走此方法  

        }  
    });
复制代码

3.后退

还有一点很重要,要想进入通过webview浏览网页,而且点返回键是想在webview中返回,而不是直接退出程序,那么就得重写onKeyDown方法。

 

复制代码
    @Override  

    public boolean onKeyDown(int keyCode, KeyEvent event) {  


         if (keyCode == KeyEvent.KEYCODE_BACK && webView.canFoBack()) {  // goBack()表示返回WebView的上一页面  

             webView.goBack();  

             //退出全屏  

             quitFullScreen();  

             return true;  

         } else {  

             //结束当前页
             return super.onKeyDown(keyCode, event);
         }  

     }       
复制代码

 

4.页面缩放

适应手机屏幕

webView.getSettings().setUseWideViewPort(true);
webView.getSettings().setLoadWithOverviewMode(true);

放大设置

webView.getSettings().setDisplayZoomControls(true);

无限放大

webView.getSettings().setBuiltInZoomControls(true);  

比例缩放

webView.setInitialScale(50);
ori
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值