我要在用户更改第二 NumberPicker 当前值索引时更改我的第一 NumberPicker 值。我已经尝试过以下代码来实现这一目标:
weightPostfixNumberPicker.setOnValueChangedListener(new NumberPicker.OnValueChangeListener() {
@Override
public void onValueChange(NumberPicker numberPicker, int oldValue, int newValue) {
switch (numberPicker.getValue()) {
case 0:
setNewValues(weightKgArray);
case 1:
setNewValues(weightLbArray);
}
}
}); //...
private void setNewValues(String[] values) {
weightNumberPicker.setDisplayedValues(null);
weightNumberPicker.setMinValue(0);
weightNumberPicker.setMaxValue(values.length-1);
weightNumberPicker.setWrapSelectorWheel(false);
weightNumberPicker.setDisplayedValues(values);
}
但是它只能工作一次,当我再次更改weightPostfixNumberPicker的当前值索引时,什么也没有发生。我也尝试了不同的听众,但是结果是一样的。我在这里做错了什么?预先感谢!
答案 0 :(得分:1)
我的错是我忘记在每种情况下都添加中断/返回。添加break
后,它可以用作超级按钮。