Is there an option in JavaFX to deactivate the possibility to select the items in a ListView via mouse?
I'd like to just display a ListView without any user interaction possible.
Is there an option in JavaFX to deactivate the possibility to select the items in a ListView via mouse?
I'd like to just display a ListView without any user interaction possible.
Mordechai's approach works really great.
I tried to comment with another addition for JFoenix JFXListView but the code formatting wasn't good so I created this answer:
If you are using JFoenix and the JFXListView you have also the behaviour that you can still see the JFXRippler on cell selection.
To prevent this or change the rippler override the cell factory:
//Replace T with your specific type.
listView.setCellFactory(param -> new JFXListCell<T>() {
@Override
protected void updateItem(T item, boolean empty) {
super.updateItem(item, empty);
cellRippler = new JFXRippler(); //create empty rippler
}
});
@Override
protected void updateItem(T item, boolean empty) {
super.updateItem(item, empty);
updateSelected(false);
}
Every time you click on a cell, the cell's updateItem will call, so you can deselect it at here. If you check the base class Cell.java. It use this method to prevent empty cell being selected.
protected void updateItem(T item, boolean empty) {
setItem(item);
setEmpty(empty);
if (empty && isSelected()) {
updateSelected(false);
}
}