[android] android에서 edittext에 숫자 값만 설정하는 방법은 무엇입니까?

나는이이 edittext값을 삽입 할 정수하는 난 단지합니다. 누군가 내가 사용해야 할 재산을 말해 줄 수 있습니까?



답변

android:inputType="number"XML 속성을 생각 합니다.


답변

예를 들면 다음과 같습니다.

<EditText
android:id="@+id/myNumber"
android:digits="0123456789."
android:inputType="numberDecimal"
/>


답변

코드에서 할 수있는 일

ed_ins.setInputType(InputType.TYPE_CLASS_NUMBER);


답변

숫자 만 입력 사용을 위해 android:inputType="numberPassword"함께 editText.setTransformationMethod(null);수의 자동 숨기기를 제거합니다.

또는

android:inputType="phone"

숫자 입력 만하면이 두 가지 방법 이보다 좋습니다 android:inputType="number". inputType으로 “number”를 언급 할 경우 키보드로 문자를 전환 할 수 있고 다른 특수 문자도 입력 할 수 있습니다. 키보드에 숫자 만 표시되므로 “numberPassword”inputType에는 이러한 문제가 없습니다. 키보드를 사용하여 문자로 전환 할 수 없으므로 “phone”inputType도 작동합니다. 그러나 여전히 +, /, N 등과 같은 특수 문자를 입력 할 수 있습니다.

로이드 : inputType = “numberPassword”editText.setTransformationMethod (NULL);

inputType = "numberPassword"

inputType = “phone”

inputType = "phone"

inputType = “number”

inputType = "number"


답변

android:inputType="numberDecimal"


답변

<EditText
android:id="@+id/age"
android:numeric="integer"
/>


답변

아래를 사용하면 문제를 더 잘 해결할 수 있습니다.

xml에서 :

<EditText
      android:id="@+id/age"
      android:inputType="numberDecimal|numberSigned"        />

또는 // etfield.addtextchangelistener 내부의 활동

     private String blockCharacterSet="+(/)N,*;#";//declare globally
               try {
                for (int i = 0; i < s.length(); i++) {


                    if (blockCharacterSet.contains(s.charAt(i) + "")) {

                        String corrected_settempvalue = arrivalsettemp.substring(0, arrivalsettemp.length() - 1);
                        et_ArrivalSetTemp.setText(corrected_settempvalue);
                        if (corrected_settempvalue.length() != 0)
                            et_ArrivalSetTemp.setSelection(corrected_settempvalue.length());

                    }
                }
            } catch (Exception d) {
                d.printStackTrace();
            }