3

Android アプリケーションに EditText ビューがあります。私の EditText は整数値を入力として使用していませんが、他のすべての値を使用しています。以下は私の EditText ビューです。

<EditText
android:id="@+id/txtSearchItems"
android:layout_width="75dp"
android:layout_height="wrap_content"
android:visibility="visible"
android:hint="Search"
android:textSize="14dp"
android:layout_alignParentLeft="true" 
android:layout_marginTop="2dp"
android:layout_centerHorizontal="true">
</EditText>
4

3 に答える 3

16

私が一度直面し、疑わしい問題については、次のとおりです。EditTextがXMLレイアウトファイルに含まれている可能性があり、レイアウトファイルはDialogインスタンスに使用されます。この問題は、DialogインスタンスのonKeyListenerが無効なデフォルト値を返している場合、つまり、無関係なキーに対して「returntrue」を返している場合に発生します。このような場合、EditTextは奇妙な動作をします。シナリオのサンプルコードは次のとおりです。

Dialog d=new Dialog(context);
    d.setContentView(R.layout.mylayout);
    d.setOnKeyListener(new OnKeyListener() {

                    @Override
                    public boolean onKey(DialogInterface dialog, int keyCode,
                            KeyEvent event) {
                        Log.i("onkey", keyCode + " == Onkey");
                        if (keyCode == KeyEvent.KEYCODE_BACK) {
                                return true;
                        }
                        return true;  // !!! this is wrong it should be return false;
                    }
                });
            }
于 2012-10-10T09:29:26.797 に答える
0

これを試して?

android:inputType="number"
android:digits="0123456789"

それが機能する場合は、許可したい桁数で文字を追加できます。これは、試すことができるすべての inputTypesの便利なリストです。ほとんどの場合、ソフト キーボードに表示される内容が変更されます。

于 2012-09-19T07:04:04.213 に答える
-1

android:inputType="number"次のようにxmlを追加する必要があります。

<EditText
android:id="@+id/txtSearchItems"
android:layout_width="75dp"
android:layout_height="wrap_content"
android:visibility="visible"
android:hint="Search"
android:textSize="14dp"
android:layout_alignParentLeft="true" 
android:layout_marginTop="2dp"
android:layout_centerHorizontal="true"
android:inputType="number">    <------------- this line added
</EditText>
于 2012-09-19T06:25:43.213 に答える