圆角listview项目android 4.0.4中的背景问题

时间:2014-06-10 08:27:14

标签: android android-layout listview

我有一个listview代码,如下所示

        <ListView
            android:id="@+id/ListView01"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/RelativeLayout01"
            android:cacheColorHint="@android:color/transparent"
            android:choiceMode="singleChoice" >
        </ListView>

这里是listview项目布局

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

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:padding="5dp" >

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/listview_bg" >

        <LinearLayout
            android:id="@+id/linearLayout1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignTop="@+id/imgRealstatePhoto"
            android:layout_marginLeft="5dp"
            android:layout_marginTop="10dp"
            android:layout_toLeftOf="@+id/imageView1"
            android:layout_toRightOf="@+id/imgRealstatePhoto"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/txtRealstateAddress"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textColor="#7D7D7D"
                android:textSize="15sp"
                android:textStyle="bold" />

            <TextView
                android:id="@+id/txtRealstateHomeTypeBroker"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:ellipsize="end"
                android:maxLines="3"
                android:text="Loading...."
                android:textColor="#867C7D"
                android:textScaleX="1.025"
                android:textSize="12sp" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignLeft="@+id/linearLayout1"
            android:layout_alignParentBottom="true"
            android:layout_alignParentEnd="true"
            android:layout_below="@+id/linearLayout1"
            android:gravity="bottom"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/txtRealstatePrice"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="0.75"
                android:textColor="#006B9E"
                android:textSize="12sp"
                android:textStyle="bold" />

            <TextView
                android:id="@+id/txtRealStateStatus"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="@drawable/real_estate_text_bg_pending"
                android:ellipsize="end"
                android:gravity="center"
                android:maxLines="1"
                android:singleLine="true"
                android:textColor="@android:color/white"
                android:textSize="12sp" />
        </LinearLayout>

        <ImageView
            android:id="@+id/imgRealstatePhoto"
            android:layout_width="90dp"
            android:layout_height="90dp"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:scaleType="centerCrop"
            android:src="@drawable/ellectedofficialsoverlay" />

        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:src="@drawable/expand_ico" />
    </RelativeLayout>
</RelativeLayout>
</RelativeLayout>

注意:android:background =&#34; @ drawable / listview_bg&#34;以我的相对布局

这是listview_bg.xml的代码

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

<corners android:radius="12dp" />

<stroke
    android:width="1dp"
    android:color="#6DD8F9" />

</shape>

在Android 4.0 Qmobile全部黑色输出

enter image description here

查看listview项目的整个背景变为黑色。

而在Andorid 4.4.2 nexus 7设备和仿真器中我得到了理想的结果,即

enter image description here

我希望所有设备中的第二张图像都有布局。如何解决此问题

6 个答案:

答案 0 :(得分:2)

您可以使用andorid“CardView”来尝试。通过使用cardview,您可以轻松管理圆角。请检查Link。这对您有所帮助。谢谢

答案 1 :(得分:1)

添加到listview_bg.xml:

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

答案 2 :(得分:1)

Try This Code :-

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
   android:shape="rectangle"> 
<solid android:color="#FFFFFF"/>    
<stroke android:width="3dp"
        android:color="#ed4d44"/>

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

答案 3 :(得分:1)

您在不同的设备上有不同的颜色,因为每个设备都有自己的默认主题,因此给出了结果。

解决方案是为相对布局提供背景颜色,使其不透明

在listview_bg.xml

中添加
<solid
        android:color="color" />

为形状xml添加实体将使用您想要的颜色填充您的形状

答案 4 :(得分:1)

使用下面的drawable来获得所需的输出,因为你在列表项的背景中缺少纯色,为什么你没有获得所需的输出

<shape xmlns:android="http://schemas.android.com/apk/res/android"
       android:shape="rectangle" >

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

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

<stroke
    android:width="1dp"
    android:color="#6DD8F9" />

答案 5 :(得分:1)

// Try this way,hope this will help you to solve your problem.

<shape xmlns:android="http://schemas.android.com/apk/res/android" > 
    <stroke android:width="1dp" android:color="#FFFFFF" /> 
    <padding android:left="5dp" android:top="5dp" android:right="5dp" android:bottom="5dp" /> 
    <corners android:radius="8dp" /> 
</shape>