2010-11-25 7 views

答えて

16

使用あなたの活動では、この方法:

EditText et = (EditText) findViewById(R.id.text01); 
et.setInputType(0x00002002); 

または

EditText et = (EditText) findViewById(R.id.text01) ; 
et.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL); 

ここtext01はあなたのR.javaファイルにEditTextフィールドのIDです。

参考:

EditText e 
e.setInputType(InputType.Number) //Many other options are also available 
+10

次のように記述すると、より良いスタイルになります:setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL);これは同じ値ですが、読者にとってはより明確です。 – NickT

+0

@NickT ::あなたは正しいので、私は参考にしました。 –

+2

-1マジックナンバーを使用し、それがアクティビティ(ビューグループになる可能性がある)であることを前提として – Merlin

0

dobulesも受け入れるためにフラグInputType.TYPE_NUMBER_FLAG_DECIMALを追加しました。

4

たぶん、よりよい解決策が

et.setInputType(InputType.TYPE_CLASS_NUMBER 
         | InputType.TYPE_NUMBER_FLAG_DECIMAL); 

編集使用して、次のようになります:私が持っているとあなたはまたsetInputType(int type)機能を使用することができます

http://developer.android.com/reference/android/widget/TextView.html#attr_android:inputType

+1

-1とすると、これは整数だけを受け入れ、倍精度を受け付けないようにします。 –

+0

+1の編集 – tomrozb

0

et.setRawInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL); inputType属性:setRawInputTypeはそれがアンドロイドに対応

関連する問題