Добавить эффект пульсации на мою кнопку с цветом фона кнопки?

Я создал кнопку, и я хочу добавить эффект пульсации к этой кнопке!

Я создал кнопку bg XML-файл: (bg_btn.xml)

     

И это мой файл эффекта пульсации: (ripple_bg.xml)

        

И это моя кнопка, которую я хочу добавить эффект пульсации:

 

Но после добавления кнопки эффекта эффекта пульсации прозрачность и отображение кнопки только при нажатии, например:

Перед кликом

По щелчку

Но мне нужен цвет фона кнопки и эффект пульсации, я нашел часть этого кода в разных блогах Stack Overflow, но все же он не работает!

Вот еще один гибкий xml для тех, кто хочет добавить все вместе gradleиентный фон, угловой радиус и эффект пульсации:

                

Добавьте это на фоне вашей кнопки.

  

добавьте "?attr/selectableItemBackground" в атрибут foreground вашего представления, если он уже имеет фон вместе с android:clickable="true"

Добавить эффект пульсации / анимацию на кнопку Android

Просто замените свой фоновый атрибут кнопки на андроид: background = “? Attr / selectableItemBackground”, и ваш код выглядит так.

   

Еще один способ добавить эффект пульсации / анимацию на кнопку Android

Используя этот метод, вы можете настроить цвет эффекта пульсации. Во-первых, вы должны создать xml-файл в своем каталоге ресурсов с возможностью рисования. Создайте файл ripple_effect.xml и добавьте следующий код. Рез / рисуем / ripple_effect.xml

         

И установите фон кнопки в файл с указанным выше ресурсом

  

В дополнение к решению Jigar Patel добавьте это в файл ripple.xml, чтобы избежать прозрачного фона кнопок.

  

Полный xml :

         

Используйте этот ripple.xml в качестве фона в вашей кнопке:

 android:background="@drawable/ripple" 

Когда кнопка имеет фон из drawable, мы можем добавить эффект пульсации к параметру переднего плана. Проверьте ниже код, который он работает для моей кнопки с другим фоном

   

Добавьте параметр ниже для эффекта пульсации

  android:foreground="?attr/selectableItemBackgroundBorderless" android:clickable="true" 

Для справки см. Ссылку https://madoverandroid.wordpress.com/2017/11/11/how-to-add-ripple-effect-to-an-android-app/

Когда вы используете андроид: фон, вы заменяете большую часть стиля и внешнего вида кнопки с пустым цветом.

Обновление: Начиная с версии App.0.0.0 версии 23.0.0, существует новый цветной стиль Widget.AppCompat.Button.A, который использует цвет вашей темы colorButtonNormal для отключенного цвета и colorAccent для включенного цвета.

Это позволяет вам напрямую применить его к вашей кнопке

  

Вы можете использовать выталкиваемый в своем каталоге v21 для вашего фона, например:

     

Это обеспечит ваш фоновый цвет: attr / colorPrimary и имеет анимацию пульсации по умолчанию, используя значение по умолчанию attr / colorControlHighlight (которое вы также можете задать в своей теме, если хотите).

Примечание: вам нужно создать настраиваемый селектор меньше, чем v21:

       

В дополнение к Sudheesh R

Добавить эффект пульсации / анимацию на кнопку Android с прямоугольной формой кнопки с углом

Создать файл xml res / drawable / your_file_name.xml

                

Добавление меняющихся передних и кликаемых атрибутов.

  

Просто используйте:

 android:backgroundTint="#f816a463" 

Вместо:

 android:background="#f816a463" 

Не забудьте изменить свою Button на android.support.v7.widget.AppCompatButton

попробуй это

  

AppCompat v7 +

Если вы не префиксеруете ?android: ваше приложение выйдет из строя.

Вы должны использовать "?android:attr/selectableItemBackground" или "?android:attr/selectableItemBackgroundBorderless" , исходя из ваших предпочтений. Я предпочитаю Borderless .

Вы можете поместить его в android:background или android:foreground чтобы сохранить существующие свойства.

Элемент должен иметь android:clickable="true" и android:focusable="true" чтобы это работало, но многие элементы, такие как кнопки, имеют по умолчанию true .

   
Давайте будем гением компьютера.