3

如何设置列表活动的背景颜色?我可以设置列表视图项目的背景颜色,但不能设置孔 Activity-View(参见图像底部的黑色部分)。我怎样才能做到这一点?

ListActivity XML 如下所示:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:padding="5dp"
    android:background="@color/darkbluelogo" >

    <ImageView android:id="@+id/list_image"
        android:layout_width="48dip"
        android:layout_height="48dip"
        android:contentDescription="@id/list_image"
         />
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:padding="5dp" 
        android:background="@color/darkbluelogo"
        android:scrollingCache="false" 
        android:cacheColorHint="#00000000" >

        <TextView
            android:id="@+id/title"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="@+id/title" >
        </TextView>

        <TextView
            android:id="@+id/datetime"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="@+id/datetime" >
        </TextView>

    </LinearLayout>
</LinearLayout>

这就是它在设备上的显示方式: 在此处输入图像描述

解决方案:

我必须添加样式 XML 并将其添加到 AndroidManifest.xml 中的活动中

这是正确的答案: https ://stackoverflow.com/a/10426474/1306012

4

6 回答 6

6

在包含您的列表视图的 xml 文件中设置layout_height为。fill_parent并设置你想要的那个 xml 文件的背景。

编辑:在这种情况下,您可以使用主题设置背景

像这样

<style name="MyTheme">

    <item name="android:background">@color/darkbluelogo</item>

</style>

并将此主题应用于清单文件中的列表活动。

    <activity
        android:theme="MyTheme"
于 2012-05-03T06:49:51.380 回答
2

以下代码显示了如何设置 ListActivity 的背景颜色。

getListView().setCacheColorHint(Color.rgb(36, 33, 32));
getListView().setBackgroundColor(Color.rgb(36, 33, 32));
于 2012-05-03T06:51:33.610 回答
1

您已经给出了主要线性布局的高度

 android:layout_height="wrap_content"

做了

android:layout_height="fill_parent"

它会改变整个背景的颜色。

于 2012-05-03T06:51:18.187 回答
1

嗨,如果您使用了默认的 android 列表视图,请添加以下内容:

  setListAdapter(new ArrayAdapter<String>(this,
            android.R.layout.simple_list_item_1, CONTENT));

    final ListView listView = getListView();
    listView.setBackgroundColor(Color.parseColor("#4597CD"));

或者,如果您在 xml 布局中设置了 listview,则:

<ListView
    android:id="@+id/listviewID"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#4597CD"
    android:cacheColorHint="@color/darkbluelogo"
  />
于 2012-05-03T07:05:24.190 回答
0

检查 ListView 属性的宽度和高度都应该是“fill_parent”..

 <ListView
    android:id="@+id/listCategory"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@color/darkbluelogo"
    android:cacheColorHint="@color/darkbluelogo"
  />
于 2012-05-03T07:50:50.493 回答
0
super.getListView().setBackgroundColor(getResources().getColor(R.color.red));
于 2015-02-12T15:38:51.197 回答