我在 drawable 文件夹中有 5 张图片(bg1、bg2、bg3、bg4、bg5),bg1 是我的默认背景。
我想更改背景图像,以便我点击按钮时,当它到达最终图像时,它应该再次转到第一张图像,
例如,如果我点击按钮,它应该将 bg2 设置为背景,如果我再次点击它,它应该将 bg3 设置为背景,等等,
我试过下面的代码,但它只改变了一次背景图片。
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
int x = 0;
while(x < 5){
x ++;
// Give image name that you want to show on button click
layout.setBackgroundResource(R.drawable.bg+x);
}
}
});
最佳答案
您必须将x
设置为全局变量。您在函数中设置了 x
,因此它始终为 0
。
int x = 0; //global variable in activity/fragment
...
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
x ++;
x %= 5;
if (x==0) layout.setBackgroundResource(R.drawable.bg1);
else if (x==1) layout.setBackgroundResource(R.drawable.bg2);
else if (x==2) layout.setBackgroundResource(R.drawable.bg3);
else if (x==3) layout.setBackgroundResource(R.drawable.bg4);
else layout.setBackgroundResource(R.drawable.bg5);
}
}
});
关于android studio 更改多个图像的背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62439617/