有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>
答案 0 :(得分:2)
添加一个布尔变量
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);
}
}
});
答案 1 :(得分:1)
请尝试此代码。
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);
}
}
});