25

私は自分のhtmlの下にロードしていますwebView

https://mail-attachment.googleusercontent.com/attachment/?ui=2&ik=25c0c425c6&view=att&th=138db54ff27ad34b&attid=0.1&disp=inline&realattid=f_h5ahtmbe0&safe=1&zw&saduie=AG9B_P9YNooGjsk_jLefLptQ9q15&sadet=1343790299575&sads=-yBVsLKP_2mh7zMfYLCF7sL1u-w

今私がしたいことはhtml、私のJavaクラス変数から来たテキストボックスに入力し、自動的に送信することです。

しかし、これを行う方法がわかりません。

どんな考えでも大歓迎です。

4

5 に答える 5

55

まず、あなたの URL は利用できないようです。

Android アプリと Web アプリ/Web ページの間でデータ交換を行いたい場合は、javascript を介してこれを実現できます。

Android 公式サイトの例を次に示します。

次のようなクラスを作成します。

public class JavaScriptInterface {
    Context mContext;

    /** Instantiate the interface and set the context */
    JavaScriptInterface(Context c) {
        mContext = c;
    }

    /** Show a toast from the web page */
    @JavascriptInterface
    public void showToast(String toast) {
        Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show();
    }
}

あなたのWebView

WebView webView = (WebView) findViewById(R.id.webview);
webView.addJavascriptInterface(new JavaScriptInterface(this), "Android");

あなたのウェブページで:

<input type="button" value="Say hello" onClick="showAndroidToast('Hello Android!')" />

<script type="text/javascript">
    function showAndroidToast(toast) {
        Android.showToast(toast);
    }
</script>

Web ページに何かを渡したい場合は、対応する JavaScript 関数を呼び出すだけです。

String str = "xxx";
myWebView.loadUrl("javascript:xxx('"+str+"')");

リファレンスは次のとおりです: http://developer.android.com/guide/webapps/webview.html

于 2012-08-01T03:48:12.157 に答える