如何更改EditText的背景颜色(Android)?

3

我尝试过这个:

rounded_textfield.xml:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
       android:shape="rectangle" android:padding="10dp">
    <solid android:color="#EEEEEE"/>
    <corners
            android:bottomRightRadius="8dp"
            android:bottomLeftRadius="8dp"
            android:topLeftRadius="8dp"
            android:topRightRadius="8dp"/>
</shape>

activity.xml:

<EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/searchField" android:layout_row="0" android:layout_column="0"
        android:drawableLeft="@drawable/search"
        android:background="@drawable/rounded_edittext" android:minHeight="50dp"/>

在编辑器中它是灰色的,但在手机上它是白色的。


尝试清理并重新构建您的项目。 - Amarjit
你尝试过更改为更激烈的颜色,比如 #FF0000,看看是否有效吗?你的形状看起来还不错,但是 #EEE 很接近白色,很难确保它是否有效。 - Paulo Avelar
1
尝试用另一个颜色代码替换 #EEEEEE。然后您就可以检查是否有任何差异了。 - activesince93
你在其他手机上试过吗? - Bhargav
尝试更改颜色。我用较深的颜色尝试了您的代码,它可以正常工作。 - Prerak Sola
显示剩余3条评论
3个回答

4

你的代码是正确的,只需要清理项目。但是需要记住一件事情,不同颜色在不同设备上看起来可能会有所不同,这主要取决于它们的显示设置和显示屏幕。


5
这句话应该发表在评论区而不是作为回答发布。 - DroidAks

1
尝试这个,
<EditText
                    android:id="@+id/edtPassword"
                    android:layout_width="fill_parent"
                    android:layout_height="40dp"
                    android:background="@drawable/rounded_corner"
                    android:ems="10"
                    android:hint="Enter Password"
                    android:inputType="textPassword"
                    android:paddingLeft="5dp"
                    android:paddingRight="5dp"
                    android:singleLine="true"
                    android:textColor="@android:color/white"
                    android:textColorHint="@android:color/white"
                    android:textSize="16sp" />

rounded_corner.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >

    <solid android:color="@android:color/transparent" />

    <corners
        android:bottomRightRadius="5dp"
        android:bottomLeftRadius="5dp"
        android:topLeftRadius="5dp"
        android:topRightRadius="5dp"/>

    <stroke
        android:width="1dp"
        android:color="@android:color/white" />

    <padding
        android:bottom="1dip" />

</shape>

0
创建一个名为 custom_edit_text.xml 的文件,并将其放在项目的 res 文件夹中的 xml 文件夹中。
将以下代码粘贴到该文件中:
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
   <solid android:color="#ffffff" />
   <stroke android:width="1dip" android:color="#ffffff"/>
</shape>

现在只需在您的activity_main.xml文件中像这样引用此xml:

  <EditText

                android:layout_width="match_parent"
                android:layout_height="35dp"
                android:layout_centerHorizontal="true
                android:background="@xml/custom_edit_text">

 </EditText>
For custom colors visit [this][1] link.

干杯!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接