2017-10-30 15 views
0

私はユーザーが「3/8 +」のようにタイプしている間に文字数を表示するパスワードフィールドを実装しています。これはMaterialEditText libraryによって提供されます。TextInputLayout内でMaterialEditTextを使用することをお勧めします

また、ユーザーがパスワードを非表示にすることを許可したいのですが、これはAndroid's TextInputLayoutによって提供されています。

私は目のアイコンをクリックすると、EditTextのエラーメッセージが一度点滅します(おそらく、エラーメッセージがEditTextレベルではなくTextInputLayoutレベルで処理されるためです)。これが原因ですが、TextInputLayout内でMaterialEditTextを使用することをお勧めします。

TextInputLayoutは、TextInputLayoutに向かってEditText以外の多くの責任を押して、MaterialEditTextと競合する可能性があると私は感じています。

このような状況でMaterielEditTextを削除する必要がありますか?

答えて

0

私はいつものAndroid SDKのコンポーネントを使用するprefeer、そして何が必要とokです:

<android.support.design.widget.TextInputLayout 
     android:id="@+id/input_layout_name" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 

     <EditText 
      android:id="@+id/input_name" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:singleLine="true" 
      android:hint="@string/hint_name" /> 
</android.support.design.widget.TextInputLayout> 

あなたは問題なしのEditTextのこの種の作業のための目のコンポーネントを追加することができます。

必要なもののために別のライブラリを使用する必要はありません。別のライブラリを使用する場合、SDKコンポーネントを使用することで多くのバグが発生する可能性があります。

あなたが本当にあなたのポルプスを必要と思っているときに、サードパーティライブラリを使用してください。

ニースコーディング!

+0

入力するcharの最小数を指定するにはMaterialEditTextが必要です。これにより、エラーメッセージが入力された現在の文字数で更新されます。 TextInputLayoutが 'app:counterMaxLength'属性と' app:counterEnabled'属性でこの機能を提供していることがわかりました。これは解決策かもしれませんが、後で試してみます。 – Louis

+0

はい!それは私があなたに説明しようとしたことです。あなたはその理由のためにそれを必要としません。役に立ったかどうかを教えてください –

+0

@Lois、それが私の答えに役立っているかどうか教えてください。正しいものとしてマークすることを忘れないでください。ありがとう。 –

関連する問題