您好,很抱歉问了这个简单的问题,但我一定做错了什么,
我有 12 个复选框,如果选中一个复选框,则 int 总计需要增加一个固定值(取决于该框)并显示在 textView 中
当我选中一个框时,它不会显示它应该显示的值 - refurbCost 在构造函数中初始化为 0,并且在未选择任何框时显示为 0
当我选择新厨房时,显示为 21300 而不是 3000
我做错了什么 - p.s 我知道代码可能不是很好的实践,我在 Android 开发方面还是个新手
代码
public void onClick(View v) {
boolean checked = ((CheckBox) v).isChecked() ;
switch (v.getId()){
case R.id.centralHeating:
if(checked) {
refurbCost += 2750;
}
case R.id.newKitchen:
if(checked) {
refurbCost += 3000;
}
case R.id.newBathroom:
if(checked) {
refurbCost += 1000 ;
}
case R.id.reWire:
if(checked) {
refurbCost += 2500;
}
case R.id.windowDoors :
if(checked) {
refurbCost += 3000;
}
case R.id.stairsBanisters:
if(checked) {
refurbCost += 2000;
}
case R.id.carpets:
if(checked) {
refurbCost += 2000;
}
case R.id.garden:
if(checked) {
refurbCost += 1000;
}
case R.id.wallCeiling:
if(checked) {
refurbCost += 1000;
}
case R.id.decoration:
if(checked) {
refurbCost += 1200;
}
case R.id.alarmSys:
if(checked) {
refurbCost += 600;
}
case R.id.fireSafety:
if(checked) {
refurbCost += 4000;
}
refurbTotal.setText(""+refurbCost);
}
最佳答案
在每个 case 语句之后都必须break
例如
case blabla: doSmth(); break;
关于java - Android CheckBox增量错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29793747/