Рисование нескольких фигур со шпилем в XML с Android
Вопрос
В настоящее время я рисую ряд кругов на холсте в пользовательском представлении в коде. Круги статические и не меняются. Я хотел бы нарисовать их, используя FAPEDRAWATE в XML, чтобы помочь убрать мой код. У меня будет несколько разных deamables, которые пользователь может выбрать, и поэтому я не хочу делать это в коде. Наличие чертежей 3 или 4 XML, кажется, намного Neater для меня.
Я создал один круг в XML с помощью FAPEDRAWATAL, но не могу добавить более одной формы для XML.
Как добавить несколько фигурок на документ XML с помощью FAPEDRAWATION.
Решение 2
Я думаю, что я нашел решение для добавления нескольких форм в мой XML-файл с использованием списка слоя. Я еще не пробовал это, но это, кажется, это именно то, что я хочу, поскольку формы будут рисовать в порядке их индекса массива.
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape>
<solid android:color="#FFF8F8F8" />
</shape>
</item>
<item android:top="23px">
<shape>
<solid android:color="#FFE7E7E8" />
</shape>
</item>
</layer-list>
Другие советы
Вот как я сделал заполненный красный круг с однопиксельной черной границей, с белым номером 72 посередине:
Создайте файл XML в RES DRIVALABLABLABLE и назовите его соответствующим образом, например, red_circle_black_brider.xml
<?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="@android:color/black" />
</shape>
</item>
<item android:top="1dp" android:left="1dp" android:right="1dp" android:bottom="1dp">
<shape android:shape="oval">
<solid android:color="@android:color/red" />
</shape>
</item>
</layer-list>
Затем, чтобы использовать его в своем макете, объявите его следующим образом:
<TextView
android:text="72"
android:textSize="14dp"
android:textStyle="bold"
android:background="@drawable/red_circle_black_border"
android:layout_width="22dp"
android:layout_height="22dp"
android:gravity="center_vertical|center_horizontal"
android:textColor="@android:color/white" />
Очевидно, что измените TexSize и Layout_width / Высота, как требуется :-)