TextInputEditTextとTextInputLayoutの実際の違いを知る必要があります。どちらを使用すべきか。
それらは、お互いの機能を補完する異なるレイアウトです。
これらは、次のように一緒に使用することを目的としていました。
<TextInputLayout>
<TextInputEditText/>
</TextInputLayout>
すべては公式ドキュメントにあります:
TextInputLayout:
https://developer.Android.com/reference/Android/support/design/widget/TextInputLayout.html
ユーザーがテキストを入力したためにヒントが非表示になったときに、フローティングラベルを表示するためにEditText(または子孫)をラップするレイアウト
TextInputEditText:
https://developer.Android.com/reference/Android/support/design/widget/TextInputEditText.html
TextInputLayoutの子として使用するために設計されたEditTextの特別なサブクラス。
Thumbのルール:TextInputLayout
は通常のTextInputEditText
の代わりにEditText
をラップする必要があります。
Reason:TextInputEditText
はEditText
のサブクラスであり、 TextInputLayout
の子。
EditText
の代わりにTextInputEditText
を使用すると、warningが表示されます。
追加されたEditTextはTextInputEditTextではありません。代わりにそのクラスの使用に切り替えてください。
たとえば、ランドスケープモードでEditTextをラップすると、大きなボックスが表示されますが、ヒントがありません。
Android TextInputLayoutの機能:
続きを読む こちら
TextInputLayout
とTextInputEditText
は両方とも異なります。ドキュメンテーションで述べたように ここTextInputLayout
とTextInputEditText
は以下の例のように使用することを意図しています(公式ドキュメントより)
<Android.support.design.widget.TextInputLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content">
<Android.support.design.widget.TextInputEditText
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:hint="@string/form_username"/>
</Android.support.design.widget.TextInputLayout>
また、主な違いは、TextInputEditText
とEditText
を比較するときです。 TextInputEditText
は、レイアウトが横向きモードで表示されるときのヒントを提供します。これは TWiStErRob で詳細に説明されています。これで質問の答えになることを願っています。ありがとうございました。