Селектор для рисования на MaterialButton android - PullRequest
0 голосов
/ 12 мая 2019

Я использую новый класс MaterialButton. Мне нужны разные цвета на кнопке, когда пользователь нажимает кнопку.

Я с этой целью использовал рисование селектора с самого начала, однако, похоже, он не работает с MaterialButton.

<com.google.android.material.button.MaterialButton android:layout_width="0dp"
                                                       android:text="@string/login"
                                                       style="@style/Widget.Mohre.Button"
                                                       android:layout_height="wrap_content"
                                                       app:cornerRadius="@dimen/card_corner_radius"
                                                       android:padding="@dimen/unit_large"
                                                       android:id="@+id/loginBtn"

/>

Мой Widget.Mohre. Стиль кнопки

<style name="Widget.Mohre.Button" parent="Widget.MaterialComponents.Button">
        <item name="android:textColor">@color/textColorWhite</item>
        <item name="android:background">@drawable/mohre_button_selector</item>
        <item name="android:textAppearance">@style/TextAppearance.Button</item>
        <item name="android:stateListAnimator" tools:ignore="NewApi">@animator/button_state_list_anim</item>
    </style>

Мой селектор рисования

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/mohre_button_pressed" android:state_pressed="true" />
<item android:drawable="@drawable/mohre_button_selected" android:state_enabled="false" android:state_pressed="false" />
<item android:drawable="@drawable/mohre_button_normal" />

Мои индивидуальные рисунки - это просто прямоугольники разных цветов, подобные этим

<shape xmlns:android="http://schemas.android.com/apk/res/android"
       android:shape="rectangle">
    <corners android:radius="30dp"></corners>
    <solid android:color="#3a516a"></solid>
</shape>

Кнопка вообще не принимает цвета из селектора. Он просто показывает цвет акцента по умолчанию для приложения

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