当我第一次点击按钮时,它的背景图像被更改。然后,当我再次点击按钮时,它应该得到它的第一个背景。我已经在全局设置了一个标志,然后在按钮单击增量标志计数器上。但是,当我第一次点击时没有任何反应,但第二次按钮拍摄新图像。
期望:
第一次点击:标志变为0:按钮采用默认背景。 第二次点击:标志变为1:按钮获取新背景。和标志重置为0.
它应该是第一次点击0到第二次点击第二次点击1 => 0,3rd tap => 0 reset。
这是我的代码:
flag++;
switch (flag) {
case 0:
cbhead.setBackgroundResource(R.drawable.cbxbox);
checkValue1 = TAGN;
System.out.println("flag off : " + checkValue1);
break;
case 1:
cbhead.setBackgroundResource(R.drawable.cbxboxchecked);
checkValue1 = TAGN;
System.out.println("flag on: " + checkValue1);
flag = 0;
break;
}
答案 0 :(得分:2)
只需在案例0中增加标志:
flag=0;
switch (flag) {
case 0:
cbhead.setBackgroundResource(R.drawable.cbxbox);
checkValue1 = TAGN;
System.out.println("flag off : " + checkValue1);
flag++;
break;
case 1:
cbhead.setBackgroundResource(R.drawable.cbxboxchecked);
checkValue1 = TAGN;
System.out.println("flag on: " + checkValue1);
flag = 0;
break;
}
答案 1 :(得分:0)
这是因为你在switch语句之前递增了标志。因此,如果它开始为0,当你按下按钮时它会在进入switch语句之前递增。