WebView

原创 2016年06月01日 20:01:12
public class MainActivityextends Activity {

    private WebView wed;
    private Button but_id;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        wed = (WebView)findViewById(R.id.wed);
        
        but_id = (Button)findViewById(R.id.but_id);
        //设置webwiew状态信息
        WebSettings settings=wed.getSettings();
        //设置webview是否支持js
        settings.setJavaScriptEnabled(true);
        //设置webview打开缩放方式
        settings.setBuiltInZoomControls(true);
        setVed();
    }
    
    private void setVed() {
        wed.setWebViewClient(new WebViewClient(){
            //页面开始加载
            @Override
            public void onPageStarted(WebView view, String url, Bitmap favicon) {
                // TODO Auto-generated method stub
                Log.i("zzz", "页面开始加载");
                super.onPageStarted(view, url, favicon);
            }
            //页面加载完成
            @Override
            public void onPageFinished(WebView view, String url) {
                // TODO Auto-generated method stub
                super.onPageFinished(view, url);
                Log.i("zzz", "页面加载完成");
            }
            //
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                // TODO Auto-generated method stub
                return false;
            }
        });
        
    }
    long exit=0;
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        // TODO Auto-generated method stub
//        if(keyCode==KeyEvent.KEYCODE_BACK && wed.canGoBack()){
//            wed.goBack();
//        }
        if(keyCode==KeyEvent.KEYCODE_BACK){
            if(System.currentTimeMillis()-exit>2000){
                exit=System.currentTimeMillis();
                return false;
            }else{
                System.exit(0);
            }
        }
        return super.onKeyDown(keyCode, event);
    }
    
    public void webview(View v){
        String path="file:///android_asset/jstest.html";
    //    String path="http://www.baidu.com";
        wed.loadUrl(path);
        //设置浏览器的处理类,主要设计js的弹出框
        wed.setWebChromeClient(new WebChromeClient(){
            // 返回true,客户端处理警告对话框
            @Override
            public boolean onJsAlert(WebView view, String url, String message,
                    JsResult result) {
                // TODO Auto-generated method stub
                return super.onJsAlert(view, url, message, result);
            }
            //确认对话框
//            @Override
//            public boolean onJsConfirm(WebView view, String url,
//                    String message, JsResult result) {
//                // TODO Auto-generated method stub
//                return super.onJsConfirm(view, url, message, result);
//            }
//            //js的对话框
//            @Override
//            public boolean onJsPrompt(WebView view, String url, String message,
//                    String defaultValue, JsPromptResult result) {
//                // TODO Auto-generated method stub
//                return super.onJsPrompt(view, url, message, defaultValue, result);
//            }
        });   
   }
}

设置Webview的页面缩放大小

之所以要把这个简单的WebView拿出来单独写除了简单的webview加载页面缩放的设置还是因为在此Fragment中有个小细节需要单独说下 是这样的,此Fragment依托于上层Activity,...
  • xieluoxixi
  • xieluoxixi
  • 2016年10月24日 19:41
  • 4542

android WebView清除缓存

当我们加载Html时候,会在我们data/应用package下生成database与cache两个文件夹,我们请求的Url记录是保存在webviewCache.db里,而url的内容是保存在webvi...
  • Jhone_csdn
  • Jhone_csdn
  • 2015年06月17日 12:15
  • 12037

Android 下拉刷新控件SwipeRefreshLayout结合WebView使用

SwipeRefreshLayout 是谷歌官方下拉刷新控件,4.0以下的版本需要用到  android-support-v4.jar包才能用到 android-support-v4.jar 包下载...
  • h7870181
  • h7870181
  • 2014年08月19日 16:03
  • 28576

Android WebView技术详解和经验分享

这篇文章是我在做Android JSAPI的时候积累的富贵经验,详细的分析了Android WebView的多种常用功能,满满的都是干货,希望能对正在做Android WebView开发的同学有所帮助...
  • kgdwbb
  • kgdwbb
  • 2017年01月08日 17:01
  • 842

webview 内存泄露解决办法

最近开始使用leakCanary为app进行内存泄露的检测 遇到了webview.mContext导致activity内存泄露 (不过在android 6.0的机子上没有遇到这样的问题) ...
  • EdwardWayne
  • EdwardWayne
  • 2016年03月24日 17:39
  • 1771

一个最简单的WebView教程

WebView允许你创建自己的窗口来显示网页(乃至开发一个完整的浏览器)。 在这个教程中,你可以创建一个简单的Acitivity来显示和导航网页。 1、创建一个新的项目命名为HelloWebVie...
  • lincyang
  • lincyang
  • 2012年01月05日 20:31
  • 10096

Android集成Tbs 替代原生webView

简介原生WebView存在些许问题。所以考虑到集成第三方。 介绍一下TBS的优势。 1)速度快:相比系统WebView的网页加载速度有近30%的提升; 2)省流量:云端优化技术使流量节省2...
  • L_XING_ZHI
  • L_XING_ZHI
  • 2017年03月31日 15:40
  • 2789

WebView中你不知道的事localStorage

今天在开发项目的时候碰到一个怪事:本着以为开发webview都是简简单单的事情首先:实例化webview,启用JavaScript,接着再设置WebViewClientmWebView = (WebV...
  • u014059459
  • u014059459
  • 2016年01月20日 16:50
  • 5461

webView设置圆角

...
  • zxwd2015
  • zxwd2015
  • 2017年03月21日 22:33
  • 1278

Android 彻底关闭WebView,防止WebView造成OOM

Android上的WebView经常会造成一些问题,我现在就遇到了 = = 关闭Activity之后,WebView还在内存中占用,非常有可能造成OOM。但是即使在包含该webview的Activit...
  • YaphetZhao
  • YaphetZhao
  • 2015年09月17日 14:45
  • 9407
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:WebView
举报原因:
原因补充:

(最多只允许输入30个字)