Селектор вида с наложением рисования - PullRequest
0 голосов
/ 03 мая 2018

Я пытаюсь создать кнопку, которая бы отображалась как: - при нажатии должен отображаться более темный оттенок зеленого с пометкой «галочка» - в противном случае он должен выглядеть как более светлый оттенок зеленого.

Вот нарисованный объект, который я пытаюсь использовать в качестве фона моего объекта Button:

<item android:state_pressed="true" android:drawable="@drawable/ic_check_black_24dp">
    <shape android:shape="oval">
        <size android:width="16dp" android:height="16dp" />
        <corners android:radius="8dp" />
        <gradient
            android:type="radial"
            android:gradientRadius="60dp"
            android:startColor="#64DD17"
            android:endColor="@android:color/black" />
    </shape>
</item>

<item android:state_pressed="false">
    <shape android:shape="oval">
        <size android:width="16dp" android:height="16dp" />
        <corners android:radius="8dp" />
        <gradient
            android:type="radial"
            android:gradientRadius="60dp"
            android:startColor="#76FF03"
            android:endColor="@android:color/black" />
    </shape>
</item>

Проблема в том, что при нажатии на кнопку отображается только отметка «галочка», а не зеленая форма позади нее. Если этот флажок не установлен, кнопка показывает правильную зеленую форму.

Мне нужна помощь, чтобы понять, как можно отобразить зеленую форму и пометку «галочка» при нажатии этой кнопки?

Спасибо

1 Ответ

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

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

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

    <item android:drawable="@drawable/ic_launcher_background" android:state_pressed="true">
        <shape android:shape="oval">
            <size android:width="16dp" android:height="16dp" />
            <corners android:radius="8dp" />
            <gradient android:endColor="@android:color/black" android:gradientRadius="60dp" android:startColor="#64DD17" android:type="radial" />
        </shape>
    </item>


    <item>
        <shape android:shape="oval">
            <size android:width="16dp" android:height="16dp" />
            <corners android:radius="8dp" />
            <gradient android:endColor="@android:color/black" android:gradientRadius="60dp" android:startColor="#76FF03" android:type="radial" />
        </shape>

    </item>
</selector>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...