如何在图层列表中的图层中将图像设置在适当的位置?

时间:2017-08-15 09:14:59

标签: android xml image position drawable

我正试图像这样在圆心设置图像 (在Android 4.1.2上尝试)

enter image description here

但是当我运行应用程序时,它会显示这样的图像

enter image description here

但是当我在xml中编写代码时,它会显示正确的图像 enter image description here

这是xml代码

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

    <item android:right="-1dp"
        android:left="-1dp"
        android:bottom="-1dp">

        <shape>
            <solid android:color="#50000000" />
            <corners android:radius="50dp" />
        </shape>

    </item>

    <item android:height="20dp" android:width="20dp">

        <shape>
            <corners android:radius="50dp" />
            <stroke android:color="@color/white"
                android:width="1dp"/>
            <solid android:color="#50000000"/>

        </shape>

    </item>

    <item  android:width="8dp"
        android:height="8dp"
        android:gravity="center"
        android:drawable="@drawable/news">

    </item>

</layer-list>

1 个答案:

答案 0 :(得分:0)

你可以试试这个,

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

    <item>

        <shape android:shape="oval">
            <solid android:color="#50000000"/>
        </shape>

    </item>

    <item>

        <shape android:shape="oval">
            <stroke
                android:width="1dp"
                android:color="@color/colorAccent"/>
            <solid android:color="#50000000"/>

        </shape>

    </item>

    <item
        android:bottom="5dp"
        android:drawable="@drawable/news"
        android:gravity="center"
        android:left="5dp"
        android:right="5dp"
        android:top="5dp">
    </item>

</layer-list>