android webView注入js方法

需要在页面加载完成之后才能注入自定义js方法
 

        webView.setWebViewClient(new WebViewClient() {@Overridepublic boolean shouldOverrideUrlLoading(WebView view, String url) {
//                view.loadUrl(url);return true;//true时,不可点击跳页效果,false时,可以点击跳页}@Overridepublic void onPageStarted(WebView view, String url, Bitmap favicon) {}@Overridepublic void onPageFinished(WebView view, String url) {view.getSettings().setJavaScriptEnabled(true);webView.loadUrl("javascript:window.yxbl_app.getBodyHeight($(document.body).height())");//注入自定义方法——获取webview高度的方法super.onPageFinished(view, url);}});

 

原生调用已注入的js方法

 

public static final String js2Android = "yxbl_app";
private int webViewHeight;
webView.addJavascriptInterface(new WebViewJavaScriptFunction() {@Overridepublic void onJsFunctionCalled(String tag) {// TODO Auto-generated method stub}/*** 高度*/@JavascriptInterfacepublic void getBodyHeight(String number) {webViewHeight =  Integer.parseInt(number.split("[.]")[0]);}
},js2Android);

附:自定义接口

/*** 作者:created by meixi* 邮箱:1085220040@qq.com* 日期:2019/7/22 09*/
public interface WebViewJavaScriptFunction {void onJsFunctionCalled(String tag);
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/415707.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端框架Bootstrap简单介绍

下载: 解压之后: 把这些文件拷贝到项目中 页面使用时 只需要引入: 然后我们就可以参考官网来设计需要的前端页面了 设计一个按钮:button 只需要标明css样式中使用的类 下面就是现实效果: 转载于:https://www.cnblo…

CASS软件学习笔记

最近需要学习数据处理,用到的软件是Cass6.1 软件,下面我将学习中的笔记进行了整理。 1、Cass 6.1 支持是CAD2004 -2006,安装的话,先装CAD,然后破解,再装Cass ,然后打上补丁&#xf…

vue学习中遇到的错误 Duplicate keys detected: ‘[object Object]‘. This may cause an update error.

前端入门自学,说错的请大神指点。 Avoid using non-primitive value as key, use string/number value instead. Duplicate keys detected: ‘[object Object]’. This may cause an update error.运行后出现这些警告,意思是检测到重复的键值。 把:key里…

mongoose 数据库设计千万要注意 Cast to [number] failed for value

不要定义字段type balance_flow: [{// 提现金额money: { type: Number },// 资金类型 0>提现 withdraw 1>资金流入 user_activetype: Number}],这样会报错

Linux Shell中有三种引号的用法

Linux Shell中有三种引号,分别为双引号(" ")、单引号( )以及反引号( )。 其中双引号对字符串中出现的$、、和\进行替换;单引号不进行替换,将字符串中所有字符作为普通字符输出,而反引号中字符串作…

工作113:添加echart折线图

<template><div><el-card><div slot"header" class"clearfix"><span>订单信息</span></div><!--样式控制全部 已经退回 待审核--><el-row><el-radio-group v-model"query.status" siz…

测试管理

测试管理工作检查表&#xff1a; 1. 检查每轮测试开始时测试环境是否准备好&#xff08;包括软件硬件、测试基本数据等&#xff09;&#xff1b; 2. 确保测试环境&#xff08;数据和程序&#xff09;与开发分离&#xff0c;除了测试组之外其他人不能更新测试环境的数据和程序…

android 获取webView高度,设置webView高度

1、注入获取webView高度的js方法 webView.setWebViewClient(new WebViewClient() {Overridepublic boolean shouldOverrideUrlLoading(WebView view, String url) { // view.loadUrl(url);return true;//true时&#xff0c;不可点击跳页效果&#xff0c;false时…

如何设计一个高并发系统

如何设计一个高并发系统&#xff1f; 如果你确实有真才实学&#xff0c;在互联网公司里&#xff0c;干过高并发系统&#xff0c;那你拿Offer&#xff0c;基本如探囊取物一样简单。 但你要真干过高并发系统&#xff0c;面试官绝对不会问这个问题&#xff0c;否则他就不太明智了…

李超线段树 [Heoi2013]Segment

问题 D: [Heoi2013]Segment 时间限制: 4 Sec 内存限制: 256 MB 题目描述 要求在平面直角坐标系下维护两个操作&#xff1a; 1.在平面上加入一条线段。记第i条被插入的线段的标号为i。 2.给定一个数k,询问与直线 x k相交的线段中&#xff0c;交点最靠上的线段的编号。 输…

Android 城市选择,热门城市,全部城市(美团、滴滴、淘宝)

demo链接&#xff1a;https://download.csdn.net/download/meixi_android/10819638 实现效果&#xff1a; 实现方法&#xff1a;非常简洁快速&#xff0c;三步集成实现地区选择器 1、导入city.module module导入方法&#xff1a;https://blog.csdn.net/meixi_android/articl…

虚拟化资料

很感谢 http://pan.baidu.com/netdisk/extractpublic?uk503876868#dir

汽车列表 车型选择 源码备忘

因为版权问题&#xff0c;选汽车的时候不能显示汽车自己真实的图片&#xff0c;下面我需要改成列表形式&#xff0c;下面记录一下代码 1、实现效果 2、源码 <div class"car-brand-list"><div v-for"(brand,index) in brandList" :key"inde…

Android View生命周期

View的关键生命周期为&#xff1a;> 构造View() --> onFinishInflate() --> onAttachedToWindow() --> onMeasure() --> onSizeChanged() --> onLayout() --> onDraw() --> onDetackedFromWindow()Creation&#xff08;创建&#xff09;Constructors&a…

oracle数据库安装过程中出现主目录不兼容的问题

今天是不顺利的一天&#xff0c;一大早机器就开不了机&#xff0c;结果是硬盘坏了。 网管安装好系统后&#xff0c;剩下的工作就要我完成了&#xff0c;刚开始远程桌面时&#xff0c;就出现了登录后系统反应超慢&#xff0c;根本没办法操作&#xff0c;一直是卡起的&#xff0…

mock 生成在线图片

1、需要用到库mockjs yarn add mockjs2、引入 const Random require(mockjs).Random;3、生成一张图片 Random.image(200x100);返回结果是url格式&#xff1a;http://dummyimage.com/200x100 4、主要的配置参数 Random.image( size?, background?, foreground?, format?…

android base64encoder 不存在

下载jar包:https://pan.baidu.com/s/1TxnW8DqEgRvIL4Urqlnzyw 在线回复密码&#xff1a;QQ1085220040 把jar包添加到libs下并且add as Lib /*** 利用MD5进行加密** param str* 待加密的字符串* return 加密后的字符串* throws NoSuchAlgorithmException* …

获取鼠标句柄

&#xff08;1&#xff09;引用 using System.Runtime.InteropServices; (2)调用方法 1、获取窗口标题 [DllImport( "user32.dll" )]   public static extern int GetWindowText( IntPtr hWnd, StringBuilder lpString,int nMaxCount ); 注&#xff1a;hWnd 窗口句…