WebView

HTML

在这里插入图片描述

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<script type="text/javascript">
			//找到onClick方法
			function changeText(){
				document.getElementById("p_id").innerText="aaaaaa";
			}
			
			function changeImg(){
				document.getElementById("img_id").src="img/HBuilder.png";
			}
			
			//有参
			function changeText(text){
				document.getElementById("p_id").innerText=text
			}
			
			function changeImg(image){
				document.getElementById("img_id").src=image;
			}
			
			//调用android中的方法
			function tusi(){
				window.yu.tusi();
			}
			</script>
		<title></title>
	</head>
	<body>
		<p id="p_id">文字</p>
		<img id="img_id" width="200" height="200" src="https://cn.bing.com/th?id=OSA.9ab1ef02419ca997bbd5ab4b80fadfd3&w=186&h=88&c=7&rs=2&qlt=80&cdv=1&pid=PopNow" />
		<button id="button1_id"  onclick="">谈对话框</button>
		<button id="button2_id" onclick="changeText('bbbb')">改变文字</button>
		<button id="button3_id" onclick="changeImg('img/HBuilder.png')">改变图片</button>
		<button id="button4_id"  onclick="tusi()">吐司</button>
	</body>
</html>

MainActivity

package com.example.day13_javas;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.webkit.JavascriptInterface;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;


public class MainActivity extends AppCompatActivity {

    WebView webView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        webView=findViewById(R.id.web);

        webView.loadUrl("https://blog.csdn.net/qq_34178710/article/details/99689359"); // 加载网页
        webView.loadUrl("file:///android_asset/demo1.html");//加载资源文件夹下html文件
        webView.setWebViewClient(new WebViewClient()); //二次设置给webview

        webView.getSettings().setJavaScriptEnabled(true);//控制js
        webView.getSettings().setAllowFileAccess(true);//访问内存文件夹
        webView.addJavascriptInterface(this,"yu");//js调用安卓 - 对外暴露出一个接口

        webView.getSettings().setUseWideViewPort(true); //打开页面 适应屏幕
        webView.getSettings().setLoadWithOverviewMode(true);

        webView.getSettings().setBuiltInZoomControls(true);//支持比例缩放
        webView.getSettings().setSupportZoom(true);
        
        //加载https设置
        webSettings.setJavaScriptEnabled(true);
        webSettings.setJavaScriptCanOpenWindowsAutomatically(true);
        webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE);
        webSettings.setDomStorageEnabled(true);
        webSettings.setDatabaseEnabled(true);
        webSettings.setAppCacheEnabled(true);
        webSettings.setAllowFileAccess(true);
        webSettings.setSavePassword(true);
        webSettings.setSupportZoom(true);
        webSettings.setBuiltInZoomControls(true);
        webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS);
        webSettings.setUseWideViewPort(true);
 		webView.setWebViewClient(new WebViewClient(){
            @Override
            public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
//                super.onReceivedSslError(view, handler, error);
                handler.proceed();
            }
        });

    }
    //js访问安卓
    @JavascriptInterface
    public void camera(){
        Toast.makeText(this, "照相", Toast.LENGTH_SHORT).show();


    }

    public void click(View view) {
        webView.loadUrl("JavaScript:image('https://cn.bing.com/th?id=OSA.fed6bb68fde245374a4c7b91ca77f546&w=186&h=88&c=7&rs=2&qlt=80&cdv=1&pid=PopNow')");

        webView.clearHistory(); // 清除历史记录

    }


    //释放资源
    @Override
    protected void onDestroy() {
        super.onDestroy();
        if(webView!=null){
            webView.destroy();//销毁
            webView=null;

        }
    }
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值