在Android中更改图像按钮的背景图像?
问题描述:
imageButton有一个图像背景。 它在取消选择时具有默认图像背景。 当imageButton单击其背景图像更改并选择。 现在我需要的是,当用户再次点击ImageButton它的背景图像应该改变,因为在时间不选择时间默认图像。在Android中更改图像按钮的背景图像?
这里是我的活动图像按钮代码: -
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>
答
添加一个布尔varialbe
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);
}
}
});
@thanks。有5种不同的图像按钮,如果我用这对任何1的ImageButton所有的ImageButton的背景点击将改变 – madhavan 2014-11-01 13:20:38
@madhavan像上述变化都imagesButton图像的onclick方法 – 2014-11-01 13:22:20
OK谢谢!让我试试.... – madhavan 2014-11-01 13:27:56