我想在android中使用旧的EditText材质组件。目前,我正在使用最新的材料组件库,因为有很多使用它的视图。
implementation 'com.google.android.material:material:1.1.0-alpha02'
但是,我想使用旧的EditText。
我尝试将boxBackgroundMode设置为none,我得到了想要的。但是提示的左边还有一点空白。
这是我使用的代码。
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/tilLoginEmail"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/margin_xl"
android:layout_marginEnd="@dimen/margin_xl"
android:hint="@string/label_email"
app:boxBackgroundMode="none"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="@id/tvLoginWelcome"
app:layout_constraintTop_toBottomOf="@id/tvLoginWelcome">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/etEmail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress" />
</com.google.android.material.textfield.TextInputLayout>
https://i.imgur.com/QQxRzly.jpg
结果是,提示的左边有一点空白,我希望空白消失。我该怎么办?
答案 0 :(得分:2)
您可以将TextInputLayout的样式设置为style =“ @ style / Widget.Design.TextInputLayout”。
<com.google.android.material.textfield.TextInputLayout
style="@style/Widget.Design.TextInputLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content">
答案 1 :(得分:0)
如果使用版本28.0.0的支持库,则无需使用该库即可获得相同的素材感。
implementation 'com.android.support:design:28.0.0'
然后将此代码添加到您的XML文件中:
<android.support.design.widget.TextInputLayout
android:id="@+id/tilUsername"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/username">
<android.support.design.widget.TextInputEditText
android:id="@+id/tetUsername"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="text"/>
</android.support.design.widget.TextInputLayout>
将来,如果您想对FilledBox
使用任何OutlinedBox
或TextInputLayout
,只需添加一个style
就可以做到。
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
在这种情况下,您的TextInputLayout
将如下所示:
<android.support.design.widget.TextInputLayout
android:id="@+id/tilUsername"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/username">