Skip to content Skip to sidebar Skip to footer

?android:attr/selectableitembackground Not Visible Enough On A Dark Background

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 h

Solution 1:

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>

Solution 2:

Solution with AppCompat (works on old APIs too)

android:theme="@style/Base.ThemeOverlay.AppCompat.Dark"android:background="?attr/selectableItemBackground"

Solution 3:

There is another way to change the app theme:

Theme.AppCompat.NoActionBar

It works fine for me.

Post a Comment for "?android:attr/selectableitembackground Not Visible Enough On A Dark Background"