문제

기본적으로 특정 edittext가 초점을 맞추 자마자 숫자 패드 모드로 전환하려고합니다.

도움이 되었습니까?

해결책

구성 할 수 있습니다 inputType 당신을 위해 EditText:

<EditText android:inputType="number" ... />

다른 팁

Java 파일로 수행하려면 :

EditText input = new EditText(this);
input.setInputType(InputType.TYPE_CLASS_NUMBER);

이 구현이 유용하고 더 나은 키보드를 보여주고 입력 숯을 제한합니다.

<EditText
    android:inputType="phone"
    android:digits="1234567890"
    ...
/>

또한 사용할 수 있습니다 android:maxLength 최대 숫자를 제한합니다.

이 작업을 프로그래밍 방식으로 수행하려면 :

editText.setInputType(InputType.TYPE_CLASS_PHONE);

KeyListener keyListener = DigitsKeyListener.getInstance("1234567890");
editText.setKeyListener(keyListener);
<EditText
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    ...
    android:inputType="number|phone"/> 

대량 패드를 다이얼러로 표시합니다.

두 가지 방법으로 할 수 있습니다

  1. 런타임 세트

    EditText input = new EditText(this);
    input.setInputType(InputType.TYPE_CLASS_NUMBER);
    
  2. XML 사용

    <EditText
        ...
        android:inputType="number" />
    

분수 번호가 필요한 경우 이것이 답입니다.

android:inputType="numberDecimal"

대화 상자에서 EditText를 사용하거나 동적으로 작성하고 XML에서 설정할 수없는 경우이 예제는 동적 편집 텍스트 등을 사용하는 동안 해당 유형의 키 보드를 설정하는 데 도움이됩니다.

myEditTxt.setInputType(InputType.TYPE_CLASS_NUMBER);

여기서 myedittxt는 동적 편집 텍스트 개체 (이름)입니다.

더 많은 입력 유형 및 세부 사항이 있습니다 여기 Google 웹 사이트에서

아래 코드는 실수로 "0123456789"이외의 다른 입력하더라도 "0123456789"만 허용하면 텍스트를 편집하지 않습니다.

    EditText number1 = (EditText) layout.findViewById(R.id.edittext); 
    number1.setInputType(InputType.TYPE_CLASS_NUMBER|InputType.TYPE_CLASS_PHONE);
    number1.setKeyListener(DigitsKeyListener.getInstance("0123456789”));
editText.setRawInputType(InputType.TYPE_CLASS_NUMBER);

Java 파일의 아래 코드를 사용하십시오

editText.SetRawInputType (configuration.keyboard_qwerty);

XML 코드에서 이것을 정의하십시오

android:inputType="number"
EditText number1 = (EditText) layout.findViewById(R.id.edittext); 
number1.setInputType(InputType.TYPE_CLASS_NUMBER);
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top