我希望用户能够按照他们最喜欢的顺序对水果列表进行排名。
比如说,将列表视为“芒果,苹果,香蕉,菠萝”。
如果他们按此顺序喜欢Apple,Mango,Pineapple,Banana,我想使用复选框来显示用户点击它们时的排名。
这可能吗?
由于
答案 0 :(得分:0)
是的,这可以使用Checkboxes,看看这里:
http://stackoverflow.com/questions/3149414/how-to-receive-a-event-on-android-checkbox-check-change
如果我理解正确,您只需在用户点击其中一个复选框时设置变量,如:
var number1 = 'Mango'
您应该使用上面链接中的示例来实现此目的。
答案 1 :(得分:0)
你为什么不尝试使用计数器?它从0开始,当用户按下一个复选框时你只需加1,你就会有一个数组用于保存按下的数字。
您有final int[] fruits = new int[4];
和final int counter = 0;
public void onCheckboxClicked(View view) {
// Is the view now checked?
boolean checked = ((CheckBox) view).isChecked();
// Check which checkbox was clicked
switch(view.getId()) {
case R.id.checkbox_mango:
if (checked) {
counter++;
fruits[0] = counter;
} else {
counter--;
fruits[0] = 0;
}
break;
case R.id.checkbox_apple:
if (checked) {
counter++;
fruits[1] = counter;
} else {
counter--;
fruits[1] = 0;
}
break;
//OTHER CASES
}
}