通过 XML 设置 ListView 的背景颜色

Posted

技术标签:

【中文标题】通过 XML 设置 ListView 的背景颜色【英文标题】:Setting The Background Color of A ListView Through XML 【发布时间】:2012-07-18 04:25:03 【问题描述】:

我知道我可以通过以下代码的一些变体动态设置 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_
    android:layout_>
    <ListView
        android:id="@+id/listView1"
        android:layout_
        android:layout_
        **android:background="#FFFFFF"**
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true" >
    </ListView>
</RelativeLayout>

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

【问题讨论】:

我认为您正在为您的 listView 夸大服装行布局?那么可以设置你listitem的背景,会有帮助的。 【参考方案1】:

你可以这样做:

您必须在您的 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

【讨论】:

【参考方案2】:

"#ffffff" 应该可以工作。但你也可以使用 : android:background="@android:color/black"

【讨论】:

【参考方案3】:

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

【讨论】:

以上是关于通过 XML 设置 ListView 的背景颜色的主要内容,如果未能解决你的问题,请参考以下文章

安卓listview的item点击时候的背景颜色怎么去掉或者设置成透明的呢?

Javafx listview设置背景颜色

在 Android 上更改 ListView 项目的背景颜色

设置列表视图项模板的背景颜色和列表背景颜色时,Xamarin Forms Listview 选定项背景颜色丢失

设置颜色项listview xml

android的ListView中如何设置长按Item的时候该Item背景变色