繁体   English   中英

更改Android中图像按钮的背景图像?

[英]Change background image of image button in android?

有imageButton的图像背景。 取消选择时,它具有默认的图像背景。 单击imageButton时,其背景图像会更改并处于选中状态。 现在我需要的是,当用户再次单击ImageButton时,应更改背景图像,就像取消选择默认图像时一样。

这是我的活动图片按钮代码:-

    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);

        }
    });

这是我的xml代码:-

<?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>

加一个布尔变量

boolean isClicked;

并像这样更改您的代码。

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);
            }
        }
    });

请尝试此代码。

 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);
        }
    }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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