Как сделать форму, как на картинке ниже, используя форму? - PullRequest
0 голосов
/ 02 мая 2018

Я столкнулся с трудностью в программировании Android, хочу создать форму, подобную картинке " предполагаемый .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>

Пожалуйста, помогите мне исправить код выше, большое спасибо!

Ответы [ 3 ]

0 голосов
/ 02 мая 2018

Надеюсь, это поможет вам:

<?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.

Увеличивайте или уменьшайте значения top, bottom, right, left, чтобы уменьшить или увеличить внутренний круг.

0 голосов
/ 02 мая 2018

Попробуйте это

<?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>
0 голосов
/ 02 мая 2018

попробуйте

<?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>
...