要解决Android中NumberPicker与自定义字符串数据显示错误的值的问题,可以按照以下步骤进行操作:
String[] data = {"A", "B", "C", "D", "E"};
ArrayAdapter adapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, data);
NumberPicker numberPicker = findViewById(R.id.number_picker);
numberPicker.setMinValue(0);
numberPicker.setMaxValue(data.length - 1);
numberPicker.setDisplayedValues(data);
numberPicker.setWrapSelectorWheel(false);
在上述代码中,numberPicker为在布局文件中定义的NumberPicker控件的引用。
numberPicker.setOnValueChangedListener(new NumberPicker.OnValueChangeListener() {
@Override
public void onValueChange(NumberPicker picker, int oldVal, int newVal) {
String selectedValue = data[newVal];
// 在此处执行其他操作,如更新UI等
}
});
通过上述步骤,你可以正确地将自定义字符串数据显示在NumberPicker上,并且可以根据需要监听其值的变化。