无法在图像视图中显示图层列表

时间:2015-09-07 08:49:31

标签: android android-layout layer-list

我想添加一个图层列表作为android中imageview小部件的背景。

我尝试将其添加为android:background="@drawable/layer_list_xmlfile
还有android:src="@drawable/layer_list_xmlfile

当我添加图层列表时,预览窗口不会显示任何内容,也不会显示构建apk(用于genymotion以及真实的Android设备上)。

这是我得到的:

no idea what error icon means

图层列表应显示在预览窗口上有红点的位置。

我的imageview布局代码:

<ImageView android:id="@+id/service_offers"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentEnd="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:src="@drawable/customoffertag"
            android:scaleType="center"
            android:contentDescription="@string/service_offer"/>

我的图层列表(customoffertag.xml):

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/custom_layer_item">
        <rotate
            android:fromDegrees="-65"
            android:toDegrees="45"
            android:pivotX="-55%"
            android:pivotY="1%" >
            <shape
                android:shape="rectangle" >
                <stroke android:color="@android:color/transparent"
                    android:width="10dp"/>
                <solid
                    android:color="#008475" />
            </shape>
        </rotate>
    </item>
</layer-list>

任何人都可以告诉我错误图标指示的内容,或者我哪里出错。

完整布局代码:

<?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"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:layout_margin="2dp"
    android:padding="5dp" >

<android.support.v7.widget.CardView
    android:id="@+id/card_list_service"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    card_view:cardCornerRadius="4dp"
    android:padding="5dp"
    android:background="#FFFFFF"
    android:elevation="4dp">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <ImageView android:id="@+id/service_pic"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_marginRight="3dp"
            android:layout_marginEnd="3dp"
            android:layout_centerVertical="true"
            android:scaleType="fitXY"
            android:contentDescription="@string/item_pic"/>

        <TextView android:id="@+id/service_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toEndOf="@id/service_pic"
            android:layout_toRightOf="@id/service_pic"
            android:layout_alignTop="@id/service_pic"
            android:padding="5dp"
            android:gravity="center"
            android:text="@string/service_provider_name"
            android:textColor="#000000"
            android:textSize="18sp"
            android:textStyle="normal"
            android:typeface="monospace"
            android:layout_marginBottom="2dp"/>

        <ImageView android:id="@+id/pickup_service"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toEndOf="@id/service_text"
            android:layout_toRightOf="@id/service_text"
            android:layout_alignBottom="@id/service_text"
            android:layout_alignParentTop="true"
            android:src="@drawable/pickup"
            android:scaleType="centerCrop"
            android:padding="5dp" />

        <ImageView android:id="@+id/service_offers"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentEnd="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:src="@drawable/customoffertag"
            android:scaleType="center"
            android:contentDescription="@string/service_offer"/>

        <TextView android:id="@+id/service_contact_no"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@id/service_text"
            android:layout_toRightOf="@id/service_pic"
            android:layout_toEndOf="@id/service_pic"
            android:layout_alignStart="@id/service_text"
            android:layout_alignLeft="@id/service_text"
            android:padding="5dp"
            android:gravity="center"
            android:text="@string/service_provider_contact"
            android:textColor="#848484"
            android:textStyle="normal"
            android:textSize="16sp"
            android:typeface="monospace" />

        <TextView android:id="@+id/service_dist"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@id/service_contact_no"
            android:layout_toEndOf="@id/service_pic"
            android:layout_toRightOf="@id/service_pic"
            android:layout_alignLeft="@id/service_contact_no"
            android:layout_alignStart="@id/service_contact_no"
            android:padding="5dp"
            android:gravity="center"
            android:text="@string/service_provider_dist"
            android:textColor="#848484"
            android:textSize="15sp"
            android:textStyle="normal"
            android:typeface="monospace"/>

        <Button android:id="@+id/booknow_btn"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@id/service_contact_no"
            android:layout_toRightOf="@id/service_dist"
            android:layout_toEndOf="@id/service_dist"
            android:layout_alignBottom="@id/service_dist"
            android:padding="5dp"
            android:text="@string/booknow"
            android:textSize="17sp"
            android:textStyle="normal"
            android:textColor="#FFFFFF"
            android:typeface="monospace"
            android:gravity="center"
            android:background="#008475"
            android:elevation="2dp"/>

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:text="@string/review_2"
            android:textColor="#848484"
            android:textSize="17sp"
            android:id="@+id/review_text"
            android:layout_centerVertical="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentEnd="true"
            android:padding="3dp"
            android:layout_marginEnd="3dp"
            android:layout_marginRight="3dp"
            android:gravity="end" />

        <TextView android:id="@+id/review_text1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:text="@string/review_1"
            android:textSize="17sp"
            android:textColor="#FFFFFF"
            android:layout_centerVertical="true"
            android:layout_toLeftOf="@id/review_text"
            android:layout_toStartOf="@id/review_text"
            android:layout_alignTop="@id/review_text"
            android:layout_marginRight="0dp"
            android:layout_marginEnd="0dp"
            android:padding="3dp"
            android:background="#424242"/>

    </RelativeLayout>

</android.support.v7.widget.CardView>

2 个答案:

答案 0 :(得分:0)

检查customoffertag.xml是否在drawable文件夹下。只有这样它才能识别文件并进一步处理。

答案 1 :(得分:0)

仅当高度和宽度未设置为wrap_content而是设置为特定维度时,图层列表才会显示在imageview小部件中。

对我来说尺寸是身高= 100dp;宽度= 50dp

用简单的颜色尝试同样的事情

android:background="#000000"  

以及android:src="#000000"

在imageview的宽度和高度被定义为特定的dp值之前,两者都不会显示任何内容。