列表视图背景不变

时间:2012-08-02 18:51:25

标签: android android-listview

我有viewpager一堆listviews,当列表未满或空时,我希望背景为黑色,某些手机专用motorola有默认值背景为灰色

这是我的带有viewpager的xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="#000000">

<RelativeLayout android:id="@+id/top_rl"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/titlebg"
        android:layout_above="@+id/list">

         <ImageView
            android:id="@+id/imgStartupHeader"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:adjustViewBounds="true"
            android:scaleType="centerCrop"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_marginLeft="10dp"
            android:src="@drawable/logo"/>

         <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:adjustViewBounds="true"
            android:scaleType="centerCrop"
            android:layout_alignParentTop="true"
            android:layout_alignParentRight="true"
            android:layout_marginRight="10dp"
            android:src="@drawable/fire_android"/>
    </RelativeLayout>

<android.support.v4.view.ViewPager
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:id="@+id/pager"
    android:background="#000000"/>



</LinearLayout>    

和我的包含列表视图的寻呼机xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" 
android:id="@+id/layout"
android:background="#000000">


    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="fill_parent"
        android:layout_above="@+id/bottom_rl"
        android:background="#000000" >

    <ListView
        android:id="@android:id/list"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="#000000">

    </ListView>

    </RelativeLayout>

    <RelativeLayout android:id="@+id/bottom_rl"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:background="@drawable/bottombg">

    <ImageView android:id="@+id/listName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:src="@drawable/incidents"/>   
    </RelativeLayout>

</RelativeLayout>

在这两个文件中我将背景设置为#000000,但它仍然是灰色背景,我在这里缺少什么?

3 个答案:

答案 0 :(得分:1)

想出来,如果我将listview设置为wrap_content,它会显示黑色背景,因此列表视图背景会在某些设备上显示特定内容

答案 1 :(得分:0)

请尝试:

android:background="#000000"
android:cacheColorHint="#000000"

答案 2 :(得分:0)

我不得不在背景中使用颜色,而是使用我需要的颜色的drawable - 这样可以确保所有设备上的背景颜色相同。不要忘记android:scaleType="fitXY"

ps我知道这不是最优雅的解决方案 - 但是随着Android差异变得越来越难以处理这么多平台我倾向于使用基本的简易解决方案,尽量不允许变化。