0

我正在使用一个 LayerList 显示三个项目:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:drawable="@drawable/alert_dialog_outer_stroke"/>
    <item android:drawable="@drawable/alert_dialog_middle_stroke"/>
    <item android:drawable="@drawable/alert_dialog_inner_stroke"
        android:top="3dp"
        android:right="3dp"
        android:bottom="3dp"
        android:left="3dp"/>
</layer-list>

这些项目位于三个文件中:

外:

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

中间:

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

内:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
    <stroke android:width="2px" android:color="#000000" />
    <solid android:color="#282830" />
</shape>

我正在使用 ImageView 来显示 LayerList:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:src="@drawable/alert_dialog_view" />

</RelativeLayout>

终于……什么都没有出现!如果我评论图层列表中的最后一项,则只会出现中间。我究竟做错了什么?

4

1 回答 1

0

这是你的drawables的问题。您所做的就是将这些图纸(所有相同尺寸)放在彼此的顶部。当然只有最后添加的东西是可见的。您需要指定可绘制对象的大小。看到这个帖子

于 2013-06-06T13:40:03.837 回答