Android 编辑文本自动填充后,其周围将显示黄色框
正如您将从下面的屏幕截图中看到的,很明显,填写后,Android 编辑文本自动填充后,其周围将显示黄色框,android,android-edittext,autofill,Android,Android Edittext,Autofill,正如您将从下面的屏幕截图中看到的,很明显,填写后,EditText周围会出现一个黄色框。注意:只有在输入的文本是自动填充的情况下才会发生这种情况 我的XML: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" andr
EditText
周围会出现一个黄色框。注意:只有在输入的文本是自动填充的情况下才会发生这种情况
我的XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:baselineAligned="false"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<View
android:id="@+id/view2"
android:layout_width="match_parent"
android:layout_height="@dimen/login_background"
android:background="@color/colorPrimary" />
<View
android:id="@+id/view"
android:layout_width="@dimen/login_container_width"
android:layout_height="@dimen/login_container_height"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/login_container_margin_top"
android:background="@drawable/login_container"
android:elevation="8dp">
</View>
<Button
android:id="@+id/button"
android:layout_width="250dp"
android:layout_height="50dp"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="55dp"
android:background="@drawable/login_button"
android:elevation="10dp"
android:stateListAnimator="@null"
android:text="LOGIN"
android:textColor="@color/white"
android:textSize="20sp" />
<EditText
android:id="@+id/editText"
android:layout_width="300dp"
android:layout_height="wrap_content"
android:layout_marginTop="25dp"
android:elevation="10dp"
android:ems="10"
android:hint="Email address"
android:inputType="textEmailAddress"
android:textColor="@color/colorPrimary"
android:layout_below="@+id/view2"
android:layout_centerHorizontal="true"
android:stateListAnimator="@null" />
<EditText
android:id="@+id/editText2"
android:layout_width="300dp"
android:layout_height="wrap_content"
android:layout_marginTop="23dp"
android:ems="10"
android:inputType="textPassword"
android:elevation="10dp"
android:hint="Password"
android:textColor="@color/colorPrimary"
android:layout_below="@+id/editText"
android:layout_alignStart="@+id/editText"
android:stateListAnimator="@null" />
</RelativeLayout>
</LinearLayout>
您可以自定义自动填充的背景。
创建新样式文件res/values-v26/styles.xml,
用一行代码将应用程序主题的副本添加到该文件中
<item name="android:autofilledHighlight">@android:color/transparent</item>
@android:color/transparent
在这种情况下,它将是透明的,这是我想要实现的,但是你可以使用任何你喜欢的颜色。
您正在使用appcompat吗?如果没有,请切换到appcompat。两个不相关的问题-为什么要使用ems
?这不是CSS,您应该使用textSize
和sp
中的单位。您真的知道stateListAnimator
属性的作用吗?我以前从未使用过它,您可能不需要它。我确实在使用AppCompat库。至于其他问题,我做了必要的修改。这是我对stateListAnimator的错,我在复制/粘贴后不小心把它留在了里面,但是问题仍然存在。是的,这些都没有关系。好的,那就是appcompat为编辑文本设置主题。你能试着手动改变背景吗?首先,我使用android:background=“#808080”,将其设置为纯灰色,然后将其设置为黄色。然而,它混合了灰色和黄色,所以它变成了一种吝啬的灰色——哇!没想到。大概深入app compat,查看背景绘图将其设置为黄色的状态。谢谢。您必须确保将其置于应用程序主题下。将此添加到任何其他主题都不正确。像魅力一样工作。如果使用Oreo以上的版本,只需添加工具:ignore=“NewApi”行。是否有办法避免重复样式规范的其余部分(在values和values-v26中)?