WebKit 上的JS直接使用Java Bean

简介: 引用:http://www.oschina.net/code/snippet_97818_4400 [代码] java bean代码 01 public class Bean{ 02     private String title; ...

引用:http://www.oschina.net/code/snippet_97818_4400

[代码] java bean代码

01 public class Bean{
02     private String title;
03  
04     public void setTitle(String title){
05         this.title = title;
06     }
07  
08     public String getTitle(){
09         return this.title;
10     }
11 }

[代码] android端

01 package com.xu81.tw4a;
02  
03 import java.util.List;
04  
05 import android.app.Activity;
06 import android.webkit.WebChromeClient;
07 import android.webkit.WebSettings;
08 import android.webkit.WebView;
09  
10 public class TiddlyWiki4Android extends Activity {
11  
12     private WebView mainWebView;
13  
14     /** Called when the activity is first created. */
15     @Override
16     public void onCreate(Bundle savedInstanceState) {
17         super.onCreate(savedInstanceState);
18         setContentView(R.layout.main);
19                  
20                 //webview对象
21         mainWebView = (WebView) findViewById(R.id.mainWebView);
22  
23         WebSettings setting = mainWebView.getSettings();
24         setting.setJavaScriptEnabled(true);//允许javascript
25         mainWebView.setWebChromeClient(new WebChromeClient());//初始化WebChromeClient对象
26                 Bean b = new Bean();
27                 b.setTitle("title");
28         mainWebView.addJavascriptInterface(b, "bean");//添加javascript对象
29         mainWebView.loadUrl("file:///android_asset/test.html");//加载本地html页面
30     }
31 }

[代码] javascript端调用方式

1 function getDefault(){
2     var bean = window.bean;
3     var title = bean.getTitle();
4         alert(title);
5 }

[图片] screen.png

img_bdf6c9d86c561ac5fd3f9354dac7e9e6.png
相关文章
|
2天前
|
JavaScript 前端开发 Java
Java和JavaScript的区别
【4月更文挑战第8天】Java和JavaScript的区别
15 1
|
2天前
|
JavaScript 前端开发 Java
java和js
【4月更文挑战第8天】java和js
26 1
|
2天前
|
前端开发 JavaScript Java
Java和JavaScript的应用场景有显著的不同
【4月更文挑战第8天】Java和JavaScript的应用场景有显著的不同
14 1
|
2天前
|
Web App开发 JavaScript 前端开发
《手把手教你》系列技巧篇(三十九)-java+ selenium自动化测试-JavaScript的调用执行-上篇(详解教程)
【5月更文挑战第3天】本文介绍了如何在Web自动化测试中使用JavaScript执行器(JavascriptExecutor)来完成Selenium API无法处理的任务。首先,需要将WebDriver转换为JavascriptExecutor对象,然后通过executeScript方法执行JavaScript代码。示例用法包括设置JS代码字符串并调用executeScript。文章提供了两个实战场景:一是当时间插件限制输入时,用JS去除元素的readonly属性;二是处理需滚动才能显示的元素,利用JS滚动页面。还给出了一个滚动到底部的代码示例,并提供了详细步骤和解释。
31 10
|
1天前
|
前端开发 JavaScript Java
Java与JavaScript的区别与联系:有人的地方就有江湖,有浏览器的地方就有JavaScript
Java与JavaScript的区别与联系:有人的地方就有江湖,有浏览器的地方就有JavaScript
|
2天前
|
JavaScript 前端开发 Java
《手把手教你》系列技巧篇(四十)-java+ selenium自动化测试-JavaScript的调用执行-下篇(详解教程)
【5月更文挑战第4天】本文介绍了如何使用JavaScriptExecutor在自动化测试中实现元素高亮显示。通过创建并执行JS代码,可以改变元素的样式,例如设置背景色和边框,以突出显示被操作的元素。文中提供了一个Java示例,展示了如何在Selenium中使用此方法,并附有代码截图和运行效果展示。该技术有助于跟踪和理解测试过程中的元素交互。
10 0
|
2天前
|
消息中间件 安全 Java
在Spring Bean中,如何通过Java配置类定义Bean?
【4月更文挑战第30天】在Spring Bean中,如何通过Java配置类定义Bean?
21 1
|
2天前
|
编解码 JavaScript 前端开发
【专栏】介绍了字符串Base64编解码的基本原理和在Java、Python、C++、JavaScript及Go等编程语言中的实现示例
【4月更文挑战第29天】本文介绍了字符串Base64编解码的基本原理和在Java、Python、C++、JavaScript及Go等编程语言中的实现示例。Base64编码将24位二进制数据转换为32位可打印字符,用“=”作填充。文中展示了各语言的编码解码代码,帮助开发者理解并应用于实际项目。
|
2天前
|
JavaScript 前端开发 Oracle
java和JavaScript的区别
java和JavaScript的区别
11 3
|
2天前
|
Java 测试技术 Spring