2

クエリが1つあります。HTMLページからマイアクティビティファイルに値を渡すことはできますか?

Assets/wwwフォルダーにあるhtmlファイルとsrc/package_nameにあるActivityファイル

4

2 に答える 2

7

JavaScriptInterfaceを使用する必要があります。Webビューで、このインターフェイスを追加します。

  1. JavaScriptInterfaceクラスを次のようにします(ここでは、クラスに任意の名前を使用できます)

     public class JavaScriptInterface {
         Context mContext;
    
         /** Instantiate the interface and set the context */
         JavaScriptInterface(Context context) {
             mContext = context;
         }
    
         /** Get passed value from the web page here */
         public void showMyValue(String passedValue) {
             android.util.Log.i("TAG", "I Got this value:" + passedValue);
         }
     }
    
  2. このインターフェースを次のようにWebビューに追加します

     WebView webView = (WebView) findViewById(R.id.webview);
     webView.addJavascriptInterface(new JavaScriptInterface(this), "Android");
    
  3. 今あなたのウェブページで、あなたの価値を渡すためにこのメソッドを呼び出して、その価値でいっぱいの何かをする必要があります

     <input type="button" value="ClickMe" onClick="passValueToAndroid('Hello Android!')" />
     <script type="text/javascript">
     function passValueToAndroid(yourPassingValue) {
          Android.showMyValue(yourPassingValue);
      }
     </script>
    
于 2013-01-07T05:27:11.847 に答える
1

はい、htmlからアクティビティに任意の変数を渡すことができます。

HTMLとアクティビティの間でやり取りするJavaScriptインターフェイスを作成する必要があります。

実装の詳細については、このリンクを参照してください

http://developer.android.com/guide/webapps/webview.html

于 2012-12-17T11:17:04.233 に答える