What is the "state_focused" state for a Button?

aez picture aez · Jan 13, 2012 · Viewed 38k times · Source

I would like a Button background to remain a certain color after the button is clicked, and change colors again when some other button is pressed. I thought this was the "state_focused" state.

But the only two states I seem to have for my Button is pressed or not pressed.

Do I understand the state_focused state correctly, or is my StateListDrawable (see below) wrong?

<?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"><shape>
            <solid android:color="#00ff00" />
        </shape></item>
    <item android:state_pressed="true"><shape>
            <solid android:color="#ff0000" />
        </shape></item>
    <item><shape>
            <solid android:color="#0000ff" />
        </shape></item>

</selector>

Answer

dmon picture dmon · Jan 13, 2012

state_focused is whenever the button is focused on using a dpad or the trackball. Views don't generally show a focused state when using touch.