简单的实现 Js和java交互
来源:互联网 发布:微商城 源码 编辑:程序博客网 时间:2024/05/16 14:01
效果:点击img标签实现图片的交替显示,实现需要懂点js,哈哈。
//上代码
public class MainActivity extends AppCompatActivity { WebView mWebView; android.os.Handler mHandler; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mWebView = (WebView)findViewById(R.id.webview); WebSettings webSettings = mWebView.getSettings(); webSettings.setSavePassword(false); webSettings.setSaveFormData(false); webSettings.setJavaScriptEnabled(true); webSettings.setSupportZoom(false); mWebView.setWebChromeClient(new MyWebChromeClient()); //"demo"是DemoJavaScriptInterface的别名,可以任意取,这是js调用java的固定格式 mWebView.addJavascriptInterface(new DemoJavaScriptInterface(),"demo"); mWebView.loadUrl("file:///android_asset/test.html"); mHandler = new android.os.Handler(); } final class MyWebChromeClient extends WebChromeClient { @Override public boolean onJsAlert(WebView view, String url, String message, JsResult result) { result.confirm(); return true; } } final class DemoJavaScriptInterface { DemoJavaScriptInterface() { } @JavascriptInterface public void clickOnAndroid() { mHandler.post(new Runnable() { public void run() { //调用js中wave方法;("javascript:"+js方法)固定写法 mWebView.loadUrl("javascript:wave()"); } }); } }}
//test.html文件内容
<html><script language="javascript">var flag = false; function wave() { if(!flag){ flag = true; document.getElementById("droid").src="testb.png"; }else{ flag = false; document.getElementById("droid").src="testa.png"; } }</script><body><!-- window为固定写法,demo为DemoJavaScriptInterface的别名,clickOnAndroid为DemoJavaScriptInterface的方法--><a onClick="window.demo.clickOnAndroid()"> <div style="width:160px; margin:0px auto; padding:10px; text-align:center; border:2px solid #202020;"> <img id="droid" src="testa.png"/><br> Click me! </div></a></body></html>
0 0
- 简单的实现 Js和java交互
- WebViewJavascriptBridge 实现js和java的交互
- js实现网页和控件的简单交互
- java 和js的交互
- Java 和js的交互
- Android 中利用WebViewJavascriptBridge 实现js和java的交互
- Android 利用WebViewJavascriptBridge 实现js和java的交互
- Android 利用WebViewJavascriptBridge 实现js和java的交互
- Android 中利用WebViewJavascriptBridge 实现js和java的交互
- Android 利用WebViewJavascriptBridge 实现js和java的交互
- Android 利用WebViewJavascriptBridge 实现js和java的交互
- swift js 实现简单的交互 JavaScriptCore
- Android与JS的交互简单实现
- Android与JS的交互简单实现
- Android上实现Java和Js交互
- Android和JS的简单交互
- 简单的js交互
- WebView的简单使用及和js的交互
- 技术人生,从此记录成长的点滴
- python(第二版)第二章答案
- 软件工程基础知识
- 闰年判断
- hdu4899 dp套dp
- 简单的实现 Js和java交互
- solr6.0配置中文分词器IK Analyzer
- 条件注释判断浏览器<!--[if !IE]><!--[if IE]><!--[if lt IE 6]><!--[if gte IE 6]>
- Swift3中dispatch_once废弃的解决办法
- 【1024程序员节】我们的世界不只0和1
- GDI绘图之画图
- ADB 命令常用命令
- Solr 6.0 学习(二)创建core并插入索引
- GDI绘图之设置文本背景色为透明度