繁体   English   中英

如何使用可绘制形状制作如下图所示的形状?

[英]how to make a shape like the picture below using a shape drawable?

我在Android编程中遇到了困难,我想制作一个像我上载的图片“ shoulded.bmp ”的形状。 但是我不知道该怎么做,我只是通过下面的代码上传了一个类似“ actual.bmp ”的文件。

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

    <solid
        android:color="#199900"/>

    <size
        android:height="20dp"
        android:width="20dp"/>

    <stroke
        android:width="2dp"
        android:color="#004A00"/>
</shape>

请帮助我更正上面的代码,非常感谢!

尝试这个

<?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="#199900" />
        <size android:width="15dp" android:height="15dp" />
    </shape>
</item>
<item>
    <shape android:shape="oval">
        <stroke android:width="1dp" android:color="@android:color/transparent" />
        <solid android:color="#ffffff" />
        <size android:width="10dp" android:height="10dp" />
    </shape>
</item>
<item>
    <shape android:shape="oval">
        <stroke  android:width="6dp" android:color="@android:color/transparent" />
        <solid android:color="#199900" />
        <size android:width="10dp" android:height="10dp" />
    </shape>
</item>
</layer-list>

希望对您有所帮助:

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

    <item xmlns:android="http://schemas.android.com/apk/res/android">
        <shape xmlns:android="http://schemas.android.com/apk/res/android"
            android:shape="oval">
            <solid
                android:color="#ffffff"/>

            <size
                android:height="20dp"
                android:width="20dp"/>

            <stroke
                android:width="10dp"
                android:color="#004A00"/>
        </shape>
    </item>

    <item xmlns:android="http://schemas.android.com/apk/res/android"
        android:bottom="30dp"
        android:left="30dp"
        android:top="30dp"
        android:right="30dp">
        <shape xmlns:android="http://schemas.android.com/apk/res/android"
            android:shape="oval">
            <solid
                android:color="#004A00"/>

            <size
                android:height="20dp"
                android:width="20dp"/>
        </shape>
    </item>

</layer-list>

编辑:

您可以避免使用size属性。

增大或减小topbottomrightleft值,以使内圆变小或变大。

尝试这个

<?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="#0c720c"/>
        <size
            android:width="100dp"
            android:height="100dp"/>
    </shape>
</item>

<item>
    <shape android:shape="oval">
        <stroke android:width="12dp"
            android:color="@color/transparent"/>
        <solid android:color="#fff"/>
    </shape>
</item>

<item>
    <shape android:shape="oval">
        <stroke android:width="50dp"
            android:color="@color/transparent"/>
        <solid android:color="#0c720c"/>
    </shape>
</item>


</layer-list>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM