我正在使用picker.setStrings()方法。当字符串数组中有多个值时,它可以正常工作,但当数组中只有一个元素时,它什么都不做。在下面的代码中,如果我取消注释注释语句,它工作正常(在对话框中显示no)但是有一个元素它不起作用(在对话框msg中显示为空白)。 PS。它可以在模拟器中正常工作,但在设备中,存在这个问题。
Picker stationPicker = new Picker();
stationPicker.setType(Display.PICKER_TYPE_STRINGS);
stationPicker.setSelectedString("Select the service center");
stationArray = new String[1];
stationArray[0] = "abc";
// stationArray[1] = "def";
stationPicker.setStrings(stationArray);
stationPicker.getParent().revalidate();
stationPicker.addActionListener(e -> {
stationIdArray = new String[1];
// stationIdArray = new String[2];
stationIdArray[0] = "1";
// stationIdArray[1] = "2";
if (stationArray != null) {
for (int i = 0; i < stationArray.length; i++) {
if (stationPicker.getSelectedString().equals(stationArray[i])) {
selectedStationId = stationIdArray[i] + "";
}
}
}
Dialog.show("Result", selectedStationId, "ok", null);
}