问题描述
我在 TextInputLayout
中使用 EditText
,但是在将支持库升级到 23.2.0 后,我在 logcat 中收到此警告,这两者有什么区别一个常规的 EditText
和一个 TextInputEditText
?我似乎找不到任何文档.
我也在想这个,
横向 UI 编辑空名称字段
编辑名称,您可以看到 IME 不会提示您正在编辑的内容.
横向 UI 编辑空的描述字段
编辑描述您可以看到 IME 提示您正在编辑的内容.
布局 XML
这两个字段的区别在于它们的类型EditText
VS TextInputEditText
.这里重要的是 TextInputLayout
有 android:hint
而不是包装的 EditText,当 TextInputEditText
的几行Java 代码有很大的不同.
名称字段
描述字段
I'm using an EditText
inside a TextInputLayout
, but after upgrading the support library to 23.2.0, I get this warning in the logcat, What's the difference between a regular EditText
and a TextInputEditText
? I can't seem to find any documentation for it.
I was wondering this too, Daniel Wilson gathered the documentation, but to the untrained eye it doesn't mean much. Here's what it's all about: "extract mode" is referring to the type of view that's shown when the space is too small, for example landscape on a phone. I'm using Galaxy S4 with Google Keyboard as input method editor (IME).
Landscape UI without visible IME
Based on the focus (on Description) you can see TextInputLayout
in action pushing the hint outside the editor. Nothing special here, this is what TextInputLayout
is supposed to do.
Landscape UI editing empty Name field
Editing the Name you can see that the IME doesn't give you a hint of what you're editing.
Landscape UI editing empty Description field
Editing the Description you can see that the IME gives you a hint of what you're editing.
Layout XMLs
The difference between the two fields is their type EditText
VS TextInputEditText
. The important thing here is that TextInputLayout
has the android:hint
and not the wrapped EditText, this is the case when TextInputEditText
's few lines of Java code makes a big difference.
Name field
<android.support.design.widget.TextInputLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="Item Name"
>
<EditText
android:id="@+id/name"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</android.support.design.widget.TextInputLayout>
Description field
<android.support.design.widget.TextInputLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="Item Description"
>
<android.support.design.widget.TextInputEditText
android:id="@+id/description"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="textMultiLine"
android:minLines="4"
android:scrollbars="vertical"
/>
</android.support.design.widget.TextInputLayout>
这篇关于添加的 EditText 不是 TextInputEditText.请改用该课程的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!