1

レイアウトにEditTextがあり、レイアウトの下部にもAdMob広告があります。誰かが編集テキストに何かを入力すると、キーボードの右隅にある[完了]ボタンがあるはずですが、追加した後AdMobには「次へ」ボタンがあり、押すと広告にフォーカスします。これを無効にする方法はありますか?

私のXML:

<com.google.ads.AdView android:id="@+id/adView"
        android:focusable="false"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        ads:adUnitId="XXXXXXXXXXX"
        ads:adSize="BANNER"
        ads:testDevices="XXXXXXXXXXX"/>

私のJava:

    if (showAds == true) {
    AdView adView = (AdView)this.findViewById(R.id.adView);
    adView.loadAd(new AdRequest());
                         }

注:これが重要かどうかはわかりませんが、ViewPagerを使用しているため、AdViewはMain.xmlレイアウトファイルにあり、EditTextはViewPagerが拡張するレイアウトにあります。

4

3 に答える 3

5

の[完了]ボタンを保持する場合は、次のEditText属性を追加しますandroid:imeOptions="actionDone"。これにより、[完了]ボタンがソフトキーボードに強制的に表示されます。

代わりに[次へ]ボタンを保持し、それをスキップする場合は、このメソッドAdViewを使用して、[次へ]をクリックしたときにスキップできます。AdView

于 2012-06-26T19:09:09.403 に答える
0

これは私には機能しません。editTextがフォーカスを失った後、ACTION_DONEがトリガーされた後、AdMob webViewはフォーカスを取得し、ユーザーが画面に触れない限りフォーカスを維持します。これを修正するには、現在のフォーカスからフォーカスを削除するか、ソフトキーボードを閉じます

etAddNote.setOnEditorActionListener(new TextView.OnEditorActionListener() {
        @Override
        public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
            if (actionId == EditorInfo.IME_ACTION_DONE) {           
                activity.getCurrentFocus().clearFocus();

                return true;
            }
            return false;
        }
    });

またはソフトキーボードを閉じる

etAddNote.setOnEditorActionListener(new TextView.OnEditorActionListener() {
        @Override
        public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
            if (actionId == EditorInfo.IME_ACTION_DONE) {
                View view = activity.getCurrentFocus();
                if (view != null) {
                    InputMethodManager imm = (InputMethodManager) activity
                            .getSystemService(Context.INPUT_METHOD_SERVICE);
                    imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
                }
                return true;
            }
            return false;
        }
    });
于 2016-11-29T12:33:01.793 に答える
0

このタグをルートレイアウトに追加するだけです。

android:descendantFocusability="blocksDescendants"

元。

<ScrollView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">
    <LinearLayout
        android:descendantFocusability="blocksDescendants"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        .
        .
        .
        .
        </LinearLayout>
</ScrollView>
于 2017-10-09T21:56:00.277 に答える