0

내 응용 프로그램에는 EditText이 있습니다. 환언inputFilter for TextInputEditText

9.99 사용자가 EditText의 동작은 I가 같은 InputFilter 구현 달성하기 위하여 본 EditText

에 그때 그때 23.2를 입력 할 수 2.23 :

EditText

예컨대, 현재 입력이고 이 질문에 대한 무사의 대답은 EditText with Currency format이다. 그리고 그것은 매력처럼 작동했습니다.

그러나 나는이 같은 구성에 의해 내 EditText을 대체하고 싶었 :

<android.support.design.widget.TextInputLayout 
     android:id="@+id/secondary_currency" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     app:layout_constraintBottom_toBottomOf="parent" 
     app:layout_constraintLeft_toLeftOf="parent" 
     app:layout_constraintRight_toRightOf="parent" 
     app:layout_constraintTop_toBottomOf="@+id/main_currency" 
     tools:hint="Болгарский перец"> 

     <android.support.design.widget.TextInputEditText 
      android:id="@+id/secondary_currency_input" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:inputType="number" 
      android:textSize="12sp" 
      tools:text="348929.00" /> 
    </android.support.design.widget.TextInputLayout> 

지금, 내 InputFilterTextInputEditText에 적용됩니다.

2 뒤에 .을 입력 할 때 놀랐습니다.

TextInputEditText의 경우 왜 점을 입력 할 수 없습니까? 그것을 성취하는 방법?

답변

1

현재 레이아웃 코드. inputTypenumber으로 사용했으며 원하는 숫자는 이어야합니다 ().

inputTypenumberDecimal으로 시도 할 수 있습니다.

희망이 있습니다.

+0

정말 도움이되었습니다 –

+0

도와 드리겠습니다! –

0

EditText 클래스에서이 메서드를 상속하지 않았으므로 setFilter를 TextInputEditText으로 설정할 수 없다고 가정합니다. 내가 관리하지 않았다면 비슷한 방법을 찾을 수있다. docsTextInputEditText TextInputLayout과 함께 클래스를 사용할 필요는 없다. TextInputEditText을 기존 EditText로 교체 할 수 있으며 이전과 같이 작동합니다.