通过XML设置ListView的背景颜色

时间:2012-07-19 02:35:38

标签: java android xml eclipse

我知道我可以通过以下代码的某些变体动态设置ListView的背景颜色:

ListView mainListView;  
mainListView = (ListView) findViewById( R.id.listView1 );
mainListView.setBackgroundColor(Color.BLACK);

但是,我想通过XML做同样的事情。我没有运气就尝试了以下代码(它没有任何变化):

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <ListView
        android:id="@+id/listView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        **android:background="#FFFFFF"**
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true" >
    </ListView>
</RelativeLayout>

有没有人知道通过XML更改ListView的背景颜色的简单方法?

3 个答案:

答案 0 :(得分:5)

你可以这样做:

  

您必须在您的res / value文件夹中创建Color.xml文件   项目。 Color.xml的代码是

<?xml version="1.0" encoding="utf-8"?>
<resources>
 <color name="orange">#ff5500</color>
 <color name="white">#ffffff</color>
 <color name="transparent">#00000000</color>
 <color name="date_color">#999999</color>
 <color name="black">#000000</color>
 <color name="gray">#999999</color>
 <color name="blue">#0066cc</color>
 <color name="gold">#e6b121</color>
 <color name="blueback">#99FFFF</color>
 <color name="articlecolor">#3399FF</color> 
 <color name="article_title">#3399FF</color> 
 <color name="cachecolor">#8ad0e8</color>
</resources>

Web colors in an Android color xml resource file

或者,试试这个:

android:background="@android:color/holo_green_light"

有这些颜色:

http://developer.android.com/reference/android/R.color.html

答案 1 :(得分:1)

“#ffffff”应该有效。但你也可以使用 : 机器人:背景= “@机器人:彩色/黑白”

答案 2 :(得分:0)

由于列表项具有多种状态(按下,聚焦,选择等),因此最好使用选择器xml而不是单一颜色。请参阅dev doc和此stack overflow question以供参考。 创建选择器后,将其设置为android:background。