我有一个SelectManyCheckbox的对象。对于此对象,我以下一种方式设置可用值:
SelectManyCheckbox checkbox = new SelectManyCheckbox();
List<Double> selected = new ArrayList<Double>();//this will be used for setting selected values
List<SelectItem> items = new ArrayList<SelectItem>();//this will be used as available values
for (SomeObject av : listOfObjects)
{
SelectItem item = new SelectItem(av.getNumericValue(),
av.getValue());
items.add(item);
if (av.getDefault())
{
selected.add(av.getNumericValue());
}
}
UISelectItems uiItems = new UISelectItems();
uiItems.setValue(items);
checkbox.getChildren().add(uiItems);
checkbox.setSelectedValues(new Double[selected.size()]);
但是这种设置选定值的方法不起作用。也许有人知道问题的根源是什么?
答案 0 :(得分:1)
你的Double []在那里是空的,尝试将列表转换为数组:
checkbox.setSelectedValues(selected.toArray(new Double[selected.size()]));