简体   繁体   中英

Change background image of image button in android?

There is an image background of imageButton. It has an default image background at the time of un-select. When the imageButton is click its background image changes and is select. Now I need is when user click again on ImageButton it background image should be change as was at time unselect time default image.

Here is my Activity image button code :-

    img1 = (ImageButton) findViewById(R.id.imageButton1);
    //img1.setImageResource(R.drawable.image1);
    img1.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
                //start();
                //img1.setImageResource(R.drawable.badmiton_blur);
            img1.setImageResource(R.drawable.image1);

        }
    });

Here is my xml code :-

<?xml version="1.0" encoding="utf-8"?>
 <selector xmlns:android="http://schemas.android.com/apk/res/android" >

<item 
   android:state_selected="true"
    android:drawable="@drawable/badmintion140"
    />
<item
    android:state_selected="false"
    android:drawable="@drawable/badmiton_blur"
    />
</selector>

Add one boolean varialbe

boolean isClicked;

and change your code like this.

boolean isClicked;
img1.setOnClickListener(new OnClickListener() {

   @Override
   public void onClick(View v) {
            isClicked=!isClicked;
            if (isClicked) {
                img1.setImageResource(R.drawable.image1);
            }else {
                img1.setImageResource(R.drawable.defaut);
            }
        }
    });

Please try this code.

 boolean defaultImage=true;


img1.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View v) {
        if (isClicked) {
            defaultImage=false;
            img1.setImageResource(R.drawable.image1);
        }
         else
         {
           defaultImage=true;
            img1.setImageResource(R.drawable.defaut);
        }
    }
});

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM