Android WebView常用方法

[复制链接]
admin 发表于 2017-3-31 10:47:39 | 显示全部楼层 |阅读模式 简体中文繁體中文

广州市

import android.app.Activity;  
import android.os.Bundle;  
import android.webkit.JsPromptResult;  
import android.webkit.JsResult;  
import android.webkit.WebChromeClient;  
import android.webkit.WebSettings;  
import android.webkit.WebView;  
import android.webkit.WebViewClient;  
import android.webkit.WebSettings.LayoutAlgorithm;  

public class AndroidWebViewActivity extends Activity {  
    @Override  
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.main);  

        WebView content_wv = (WebView) findViewById(R.id.content_wv);  
        WebSettings ws = content_wv.getSettings();  
        ws.setJavaScriptEnabled(true); // 设置支持javascript脚本  
        ws.setAllowFileAccess(true); // 允许访问文件  
        ws.setBuiltInZoomControls(true); // 设置显示缩放按钮  
        ws.setSupportZoom(true); //支持缩放  

        /**
         * 用WebView显示图片,可使用这个参数
         * 设置网页布局类型:
         * 1、LayoutAlgorithm.NARROW_COLUMNS : 适应内容大小
         * 2、LayoutAlgorithm.SINGLE_COLUMN:适应屏幕,内容将自动缩放
         */  
        ws.setLayoutAlgorithm(LayoutAlgorithm.NARROW_COLUMNS);  
        ws.setDefaultTextEncodingName("utf-8"); //设置文本编码  
        ws.setAppCacheEnabled(true);  
        ws.setCacheMode(WebSettings.LOAD_DEFAULT);//设置缓存模式  

        //添加Javascript调用java对象  
        content_wv.addJavascriptInterface(this, "java2js");  
        content_wv.setWebViewClient(new WebViewClientDemo());  
        content_wv.setWebChromeClient(new WebViewChromeClientDemo());  
        //设置打开的网页  
        content_wv.loadUrl("http://orgcent.com");  
        //使用WebView来显示图片  
        content_wv.loadData("<img src='http://orgcent.com'/>", "text/html", "utf8");  
    }  

    private class WebViewClientDemo extends WebViewClient {  
        @Override  
        public boolean shouldOverrideUrlLoading(WebView view, String url) {  
            view.loadUrl(url);// 当打开新链接时,使用当前的 WebView,不会使用系统其他浏览器  
            return true;  
        }  
    }  

    private class WebViewChromeClientDemo extends WebChromeClient {  
        // 设置网页加载的进度条  
        public void onProgressChanged(WebView view, int newProgress) {  
        }  

        // 获取网页的标题  
        public void onReceivedTitle(WebView view, String title) {  
        }  

        // JavaScript弹出框  
        @Override  
        public boolean onJsAlert(WebView view, String url, String message,  
                JsResult result) {  
            return super.onJsAlert(view, url, message, result);  
        }  

        // JavaScript输入框  
        @Override  
        public boolean onJsPrompt(WebView view, String url, String message,  
                String defaultValue, JsPromptResult result) {  
            return super.onJsPrompt(view, url, message, defaultValue, result);  
        }  

        // JavaScript确认框  
        @Override  
        public boolean onJsConfirm(WebView view, String url, String message,  
                JsResult result) {  
            return super.onJsConfirm(view, url, message, result);  
        }  
    }  

}  

回复

使用道具 举报

 楼主| admin 发表于 2017-3-31 17:50:14 | 显示全部楼层 简体中文繁體中文

广州市

package com.equwei.mmpic;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MainActivity extends AppCompatActivity {
    private WebView WebView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        WebView = (WebView) findViewById(R.id.webview);
        WebView.getSettings().setJavaScriptEnabled(true);
        WebView.loadUrl("http://mm.equwei.com/");
        WebView.setWebViewClient(new WebViewClient(){
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                view.loadUrl(url);
                return super.shouldOverrideUrlLoading(view, url);
            }
        });
    }
}
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录/Log in | 注册/Sign up

本版积分规则

恶趣味 ( 粤ICP备15065270号

GMT+8, 2017-8-17 17:49

WWW.EQUWEI.COM

© 2001-2016