如何在Android中的错误情况下停止EditTextView的背景色

ecr0jaav  于 2023-04-10  发布在  Android
关注(0)|答案(2)|浏览(117)
<com.google.android.material.textfield.TextInputLayout
                    android:id="@+id/tl_temple_name"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    app:hintAnimationEnabled="false"
                    app:hintEnabled="false"
                    android:layout_marginEnd="20dp"
                    android:layout_marginTop="4dp"
                    app:endIconMode="custom"
                    android:layout_marginStart="20dp"
                    app:errorTextAppearance="@style/error_appearance"
                    app:endIconDrawable="@android:color/transparent">

                    <com.google.android.material.textfield.TextInputEditText
                        android:id="@+id/et_temple_name"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_weight="1"
                        android:singleLine="true"
                        android:textSize="14sp"
                        android:paddingHorizontal="8dp"
                        android:hint=" Temple Name"
                        android:background="@drawable/et_ligh_grey_bg"
                        android:textColor="@color/brand_color"
                        />
                </com.google.android.material.textfield.TextInputLayout>

这是我的布局文件xml:

<?xml version="1.0" encoding="utf-8"?>
<shape android:shape="rectangle" xmlns:android="http://schemas.android.com/apk/res/android">
    <corners android:radius="8dp"/>
        <solid android:color="@color/light_grey"/>
</shape>

这是我的编辑textview背景

<style name="error_appearance" parent="@android:style/TextAppearance">
        <item name="android:textColor">@color/black</item>
        <item name="android:textSize">12sp</item>
        <item name="backgroundColor">@color/black</item>
    </style>

错误外观xml文件
我发射的时候视野很好

但当我得到错误然后我的编辑文本框显示

你能告诉我如何从编辑文本视图中删除黑色背景吗

pgky5nke

pgky5nke1#

您可以尝试添加android:theme=而不是app:errorTextAppearance=
示例:

<com.google.android.material.textfield.TextInputLayout
                    android:id="@+id/tl_temple_name"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    app:hintAnimationEnabled="false"
                    app:hintEnabled="false"
                    android:layout_marginEnd="20dp"
                    android:layout_marginTop="4dp"
                    app:endIconMode="custom"
                    android:layout_marginStart="20dp"
         remove --> app:errorTextAppearance="@style/error_appearance"
            add --> android:theme="@style/inputStyle"
                    app:endIconDrawable="@android:color/transparent">

并补充:

<style name="inputStyle" parent="TextAppearance.AppCompat">
   ...
    <item name="android:textColor">@color/red</item> 
   ...
    <item name="colorAccent">@color/white</item>
    <item name="colorControlNormal">@color/white</item>
    <item name="colorControlActivated">@color/white</item>
   ...
</style>

希望能帮上忙。

o7jaxewo

o7jaxewo2#

error_appearance样式中,您已将backgroundColor声明为black。只需删除此行或设置与背景<shape相同的颜色

相关问题