In Android, you can set styles in different states of a button control.
First, define mbutton. XML in RES/drawable:
<? XML version = "1.0" encoding = "UTF-8"?>
<Selector
Xmlns: Android = "http://schemas.android.com/apk/res/android">
<Item
Android: state_focused = "true"
Android: state_pressed = "false"
Android: drawable = "@ drawable/btnfocused"/>
<Item
Android: state_focused = "true"
Android: state_pressed = "true"
Android: drawable = "@ drawable/btnfocusedpressed"/>
<Item
Android: state_focused = "false"
Android: state_pressed = "true"
Android: drawable = "@ drawable/btnpressed"/>
<Item Android: drawable = "@ drawable/btndefault"/>
</Selector>
Then use the following in the layout file:
<Button
...
Android: Background = "@ drawable/mbutton"
...
Note: btnfocused, btnfocusedpressed, btnpressed, and btndefault are background images in different states of the button and placed in drawable or several other drawable folders.
Effect (several images randomly selected): (several images are not uploaded)
Default:
Focused:
Pressed:
Focused & pressed:
There is another problem here: focused disappears after the expression, so the focusedpressed style is not obtained.