android WebView (4) html_html/css_WEB-ITnose との対話
WebView が HTML と対話する方法
多くの場合、WebView は、Java コードを通じてページのアクティビティを制御するか、WebView が提供する JS を通じて Java コードをトリガーすることによって、HTML と対話する必要があります。
まず、操作する必要がある HTML コードを見てみましょう:
<!DOCTYPE html><html> <head> <title>MyHtml.html</title> </head> <body> <br> <br>大家晚上好 <br> <br>大家晚上好 <br> <br>大家晚上好 <br> <input type="button" value="测试" onclick="javascript:window.handler.show(document.body.innerHTML);" /> </body></html>
単純な HTML コード、3 行のテキスト、および 1 つのボタン。 document.body.innerHTMLはhtmlのbodyノードの内容を取得するものです。
次に、それをロードして js を有効にします:
webView.loadUrl("file:///android_asset/MyHtml.html"); webView.getSettings().setJavaScriptEnabled(true); webView.setWebViewClient(new WebViewClient() { @Override public void onPageFinished(WebView view, String url) { Toast.makeText(WebViewActivity.this, "网页加载完成", 0).show(); view.loadUrl("javascript:window.handler.show(document.body.innerHTML);"); super.onPageFinished(view, url); } });
上記の HTML のボタンのクリック イベントは、言い訳: window.handler を使用します。この言い訳を使用するには、最初にそれを定義する必要があります:
class Handler { public void show(String data) { new AlertDialog.Builder(WebViewActivity.this).setMessage(data).create().show(); } }
関数 public void show(String data) はこの言い訳によって提供され、上記の HTML および Java コードによって呼び出されます。しかし、WebView は、そのような呼び出しの理由があることをどのようにして知るのでしょうか?答えは次のとおりです:
webView.addJavascriptInterface(new Handler(), "handler");
この文はインターフェイスをバインドするために使用されます。
実行結果は次のとおりです:

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









この記事では、HTML&lt; Progress&gt;について説明します。要素、その目的、スタイリング、および&lt; meter&gt;との違い要素。主な焦点は、&lt; Progress&gt;を使用することです。タスクの完了と&lt; Meter&gt; statiの場合

この記事では、HTML&lt; Datalist&GT;について説明します。オートコンプリートの提案を提供し、ユーザーエクスペリエンスの改善、エラーの削減によりフォームを強化する要素。

記事では、HTML5クロスブラウザーの互換性を確保するためのベストプラクティスについて説明し、機能検出、プログレッシブエンハンスメント、およびテスト方法に焦点を当てています。

この記事では、html&lt; meter&gt;について説明します。要素は、範囲内でスカラーまたは分数値を表示するために使用され、Web開発におけるその一般的なアプリケーション。それは差別化&lt; Meter&gt; &lt; Progress&gt;およびex

この記事では、html5&lt; time&gt;について説明します。セマンティックデート/時刻表現の要素。 人間の読み取り可能なテキストとともに、マシンの読みやすさ(ISO 8601形式)のDateTime属性の重要性を強調し、Accessibilitを増やします

この記事では、ブラウザのユーザー入力を直接検証するために、必要、パターン、MIN、MAX、および長さの制限などのHTML5フォーム検証属性を使用して説明します。

この記事では、モバイルデバイスのレスポンシブWebデザインに不可欠なViewportメタタグについて説明します。適切な使用により、最適なコンテンツのスケーリングとユーザーの相互作用が保証され、誤用が設計とアクセシビリティの問題につながる可能性があることを説明しています。

この記事では、&lt; iframe&gt;外部コンテンツをWebページ、その一般的な用途、セキュリティリスク、およびオブジェクトタグやAPIなどの代替案に埋め込む際のタグの目的。
