135、JS和Android交互范例
生活随笔
收集整理的這篇文章主要介紹了
135、JS和Android交互范例
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
很簡(jiǎn)單的直接上代碼
<uses-permission android:name="android.permission.INTERNET" /> assets/web.html <html> <head><meta http-equiv="Content-Type" content="text/html;charset=gb2312"><script type="text/javascript">function javacalljs(){document.getElementById("content").innerHTML ="<br\>JAVA調(diào)用了JS的函數(shù)"; }function javacalljswith(arg){document.getElementById("content").innerHTML =("<br\>"+arg); }</script> </head> <body>HTML 內(nèi)容顯示 <br/> <h1><div id="content">內(nèi)容顯示</div> </h1> <br/> <input type="button" value="點(diǎn)擊調(diào)用java代碼" onclick="window.android.startFunction()"/> <br/> <input type="button" value="點(diǎn)擊調(diào)用java代碼并傳遞參數(shù)"onclick="window.android.startFunction('http://blog.csdn.net/Leejizhou')"/> </body> </html> package com.leejz.jsdemo; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.webkit.JavascriptInterface; import android.webkit.WebView; import android.widget.Toast;public class MainActivity extends AppCompatActivity {private WebView contentWebView = null;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);contentWebView = (WebView) findViewById(R.id.webview);// 啟用javascriptcontentWebView.getSettings().setJavaScriptEnabled(true);// 從assets目錄下面的加載htmlcontentWebView.loadUrl("file:///android_asset/web.html");contentWebView.addJavascriptInterface(MainActivity.this, "android");//無(wú)參調(diào)用Js點(diǎn)擊findViewById(R.id.button).setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// 無(wú)參數(shù)調(diào)用 WebView中顯示 JAVA調(diào)用了JS的函數(shù)contentWebView.loadUrl("javascript:javacalljs()");}});//有參調(diào)用Js點(diǎn)擊findViewById(R.id.button2).setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {// 傳遞參數(shù)調(diào)用 WebView中顯示 www.baidu.comcontentWebView.loadUrl("javascript:javacalljswith("+ "'www.baidu.com'" + ")");}});}//由于安全原因 需要加 @JavascriptInterface @JavascriptInterfacepublic void startFunction() {runOnUiThread(new Runnable() {@Overridepublic void run() {Toast.makeText(MainActivity.this, "吐司", Toast.LENGTH_SHORT).show();}});}@JavascriptInterfacepublic void startFunction(final String text) {runOnUiThread(new Runnable() {@Overridepublic void run() {new AlertDialog.Builder(MainActivity.this).setMessage(text).show();}});} }?
總結(jié)
以上是生活随笔為你收集整理的135、JS和Android交互范例的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: css入门教程资料(5)
- 下一篇: 用友BQ商业智能平台——图表功能