On Android Lollipop, I'm using:
android:background="?android:attr/selectableItemBackground"
to have the material animated feedback when I click on a button.
It works well when I have a button contained in a white/light layout, like a CardView for example.
But when I want to use the same thing on a dark background, we barely see the effect, it is not visible enough.
Does someone have an idea?
Thank you
On API 21+ you can set android:theme="@android:style/ThemeOverlay.Material.Dark"
on a View
or ViewGroup
to change all of the theme attributes (text color, ripple color, button color, etc.) to the "dark" versions. If you set it on a ViewGroup
, the theme is also applied to all of the child elements during inflation. It's an easy way to have regions of "dark" in an otherwise "light" interface (or vice versa).
<LinearLayout
android:id="@id/my_dark_layout"
...
android:theme="@android:style/ThemeOverlay.Material.Dark">
<TextView
android:id="@id/my_dark_bounded_ripple"
...
android:background="?android:attr/selectableItemBackground"
android:text="Bounded ripple" />
<ImageButton
android:id="@id/my_dark_unbounded_ripple"
...
android:background="?android:attr/selectableItemBackgroundBorderless"
android:src="@drawable/my_icon" />
</LinearLayout>