4

CordovaWebView は、cordova 1.9 で導入されました。 http://docs.phonegap.com/en/2.0.0/guide_cordova-webview_android.md.html

1 つのアクティビティに複数の Web ビューを入れようとした人はいますか? それはうまくいきますか?推奨されていますか?

4

1 に答える 1

0

それは実行可能です。コルドバ ガイドはいくつかのヒントを提供します。

また、MyActivity が DriodGap を拡張する必要があると仮定します。

init()1)メソッドをオーバーライドする

2)最初の(元のビュー)のサイズを変更して、画面全体を占有しないようにします

this.appView.setLayoutParams(new LinearLayout.LayoutParams(
    [desired width],
    [desired height],
));

3) 新しい CordovaWebView を作成し、その LayoutParams を最初のものと同様に設定します。次に、ルート ビューに追加します。

this.root.addView(cwv2);

4) 2 つの Web ビューが表示されます。しかし、2 つのビューに入力がある場合、両方の入力にフォーカスがあることがわかります。

5) 二重フォーカスの問題を取り除くには、次のコードを挿入します。

this.appView.requestFocus(View.FOCUS_DOWN);
this.appView.setOnTouchListener(new View.OnTouchListener() {
    public boolean onTouch(View v, MotionEvent event) {
        switch (event.getAction()) {
            case MotionEvent.ACTION_DOWN:
               case MotionEvent.ACTION_UP:
                   if (!v.hasFocus()) {
                       v.requestFocus();
                   }
                   break;
        }
        return false;
    }
});
于 2012-09-18T04:00:39.727 に答える