Using ImageButton selector in android

If we wish to display another image on the ImageButton after it has been clicked then we use selectors.

Selector is an xml file which is created in the drawable folder , helps us set a default image and a image that is set on of the following events:-

1. android:state_focused

2. android:state_enabled

3. android:state_checkable

4. android:state_selected

5. android:state_pressed

6. android:state_active

7. android:state_single

8. android:state_accelerated

9. android:state_hovered

10. android:state_drawable

11. android:state_first

12. android:state_last

13. android:state_middle

When the image button is used in layout ,then instead of selecting a image ,select the selector xml file in the following way:

STEPS:

1. Create a xml file for selector in the drawable folder.

Syntax:

<selector xmlns:android=”http://schemas.android.com/apk/res/android” >
<item android:drawable=”@drawable/camera_pressed”
android:state_pressed=”true” />
<item android:drawable=”@drawable/camera_normal” android: />

</selector>

2. Set android:background attribute in the following way

android:background=”@drawable/review_selector”

Example:

<ImageButton
android:id=”@+id/reviewBtn_id”
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:layout_alignTop=”@+id/playBtn_id”
android:layout_marginTop=”63dp”
android:layout_toRightOf=”@+id/playBtn_id”
android:background=”@drawable/review_selector” />

 

By Rachita Nanda