Home » Android » android – Button color change on hover

android – Button color change on hover

Posted by: admin June 15, 2020 Leave a comment

Questions:

I’m just a beginner with Android. I want the button to change its color on mouseover.
I don’t know how to do that in android. Can it be done?

View for a button:

<Button 
  android:id="@+id/b8"
  android:text="click me"
  style="?android:attr/buttonStyleSmall"
  android:textSize="20dp" />
How to&Answers:

You need to use what’s called a selector.

You can read about them and get a tutorial from this site.

Keep in mind that there really isn’t a concept in Android as “hover” since you can’t hover your finger over the display. But you can create selectors for, say, when a button has focus. Normally a button can have three states: Normal, Focused and Pressed.

Answer:

The particular mouse hover functionality as we know it, is supported on Android OS 4.0 and above.
Views have onHoverListeners(). Isnt it finally great

Answer:

Here is xml– hover.xml —

<item android:drawable="@drawable/image__hover" android:state_focused="false" android:state_pressed="true"/>
<item android:drawable="@drawable/normalimage"/>

and how i use it in Button for color change on hover

<Button
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:background="@drawable/hover"
                        ></Button>

Answer:

Hovering is possible on Android: all devices that have a track ball or D-pad or QWERTY keyboard arrow keys can move the “hover” or focus to anything that is pressable (clickable). Then, on my G1 for example, you press the track ball to press it down into the android:state_pressed state.