ListView
をCheckBox
と簡単に作成したいと思います。これが完了しました。今、私は、このListViewからすべての選択された項目を取得する方法を探しています。ListViewから選択した項目を取得する| CheckBoxListCell
私は、setCellFactory()
メソッドを使用して、別のコレクションでアイテムを選択してアイテムを追加し、アイテムが選択されていないときにアイテムを削除できることを理解しました。しかし、私はこれを行うには醜い方法だと思う。
ListView<String> listView = new ListView<>();
String[] toppings = {"Cheese", "Pepperoni", "Black Olives"};
listView.getItems().addAll(toppings);
listView.setCellFactory(CheckBoxListCell.forListView(new Callback<String, ObservableValue<Boolean>>() {
@Override
public ObservableValue<Boolean> call(String item) {
BooleanProperty observable = new SimpleBooleanProperty();
observable.addListener((obs, wasSelected, isNowSelected)
-> System.out.println("Check box for " + item + " changed from " + wasSelected + " to " + isNowSelected)
);
return observable;
}
}));
ListView
から選択したアイテムのリストを取得するにはどうすればよいですか?