Different image for focused,pressed and normal state in android button

     In this tutorial we are going to learn about the android button and every state (pressed,focused and normal) of an image when placed on that button.

1) First create a new project in android studio more details...

2) Remove the TextView code from activity_main.xml, create a button in your project by using the following code or tools.

<Button
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:background="@drawable/btnhome_new" />


android add button in main_activity.xml

Note:
     In the above image you can see an error @drawable/btnhome_new. This is because the program contains the file btnhome_new.xml  on drawable directory, which is not yet created.

3) Now we are going to create a file btnhome_new.xml on drawable directory.
   a) Right click on the drawable directory  => New => Drawable resource file
 
Create new xml file in android

   b) Now a file is opened btnhome_new.xml just remove all the code from that file and replace with the code given below.

Note : Once we create this file the error(@drawable/btnhome_new) will be removed from activity_main.xml.

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/btnblue"
android:state_pressed="true" />
<item android:drawable="@drawable/btnrose"
android:state_focused="true" />
<item android:drawable="@drawable/btnred" />
</selector>

Selector added in a xml file in android.jpeg

You can see some errors in this code
@drawable/btnblue
@drawable/btnrose
@drawable/btnred

 Because btnBlue.jpg , btnRose.jpg and btnRed.jpg are not in drawable directory.
  4) Now we are going to create all these files in drawable directory.

     Copy the images to drawable directory.

     Paste the copied images to drawable directory.
Paste the copied images to android drawable folder

     A dialog box will ask for confirmation, just press ok.
Paste dialog box in adndroid studio
     Now the images are placed into drawable folder, and you can see that the error has been removed.

Successfully removed the error in android

Note : Image name should not contain capital letters.


0 nhận xét:

Đăng nhận xét