AndroidのJavaとJavaScriptメソッドの相互調整
3420 ワード
Androidの開発ではWebViewがよく使われ、AndroidのjavaコードとWebページのjavaScriptメソッドの相互呼び出しに関わる.
準備作業最も基本的なWebViewオブジェクトを得る ButterKnifeプラグイン注釈 を使用普通findViewById デフォルトのテキスト符号化方式はutf-8 に設定. jsコード の実行を許可する.
JavaコードJavaScriptを呼び出す方法
WebページのJavaScriptコード
例えばjavaコードでWebページのchangeInputValueを呼び出す方法
HTML(Webページ)コードJavaを呼び出す方法
JAvaのコード:
JavaScriptのコード
準備作業
@Bind(R.id.webview)
WebView webview;
WebView webview= (WebView) findViewById(R.id.webview);
の2つの方法webview.getSettings().setDefaultTextEncodingName("utf-8");
webview.getSettings().setJavaScriptEnabled(true);
JavaコードJavaScriptを呼び出す方法
WebページのJavaScriptコード
<script type="text/javascript">
function changeInputValue(content){
document.getElementById("put_id").value=content;
}
script>
例えばjavaコードでWebページのchangeInputValueを呼び出す方法
webview.loadUrl("javascript:changeInputValue(' ')");
webView loadUrl ,
:
javascript: + JavaScript (' ');
HTML(Webページ)コードJavaを呼び出す方法
JAvaのコード:
webview.addJavascriptInterface(new JavaScriptInterface(),"AndroidMethod");
class JavaScriptInterface{
@JavascriptInterface
public void showToast(String content){
Toast.makeText(getApplicationContext(), content, Toast.LENGTH_SHORT).show();
}
}
webview addJavascriptInterface , " "
1." " new
2. JavaScript
" "
,
JavaScriptのコード
<script type="text/javascript">
function showAndroidMethod(content) {
AndroidMethod.showToast(content);
}
script>
JavaScript java " "