我有10个toggleGroup按钮,每个按钮有4个单选按钮。单击切换组中的一个单选按钮时,它将选定单选按钮的索引值添加到Arraylist中。然后,我有一个“保存”按钮,可以将这些值保存到数据库中。
public ArrayList<Integer> RightInt(){
for(ToggleGroup tg: toggleRDB()) {
tg.selectedToggleProperty().addListener((observable, oldValue, newValue) ->{
if(newValue != null) {
//adds the index of the selected RadioButton to selectedRDBIndex list
selectedRDBIndex.add(tg.getToggles().indexOf(newValue));
}
});
}
return selectedRDBIndex;
}
//selectedRDBIndex is an ArrayList<Integer> storage.
上面的代码返回带有10个值的Integer列表。
此代码是保存按钮执行的操作。
for(int i = 0; i < 10; i++) {
//answerStore.storeRDB connects to my dataBase to save the values returned by the RightInt() function.
answerStore.storeRDB(i+1, TB, RightInt().get(i));
}
RightInt().clear();
上面的代码运行良好。它将值保存并更新到我的数据库。
然后我决定在这里再次使用这些值:
for(int i = 0; i<10 ; i++) {
toggleRDB().get(i).getToggles().get(answerStoration.retrieveDataRDBSet(i+1,TB)).setSelected(true);
}
//toggleRDB() returns a list of toggleGroups.
//answerStoration.retrieveDataRDBSet gets the radioButton integer data in the database that i used to setSelect an index of radioButton in each toggle group.
我使用了所有这些代码,以便当用户选择单选按钮时,将保存进度。但是使用完上面的代码后,我无法更新数据库中的数据。希望您了解我的情况并解决此问题。提前谢谢。
我对我的问题有一些提示。当我单击单选按钮时 它在arraylist上添加了另一个位置,这就是为什么值没有变化的原因。现在,我需要弄清楚在何处放置set()方法或如何替换这些值。我想说的是清除清单不是一种选择。