Reputation: 3
I have:
I want to keep the ListView always be filled while changing the vertical size and the vertical scrollbar always hide. I mean listView.getItems.size()=number of current observable cells in the ListView.
How can I do that? Help me plz?
Upvotes: 0
Views: 327
Reputation: 106
I have found a solution for it.
You have your ListView
and your ObservableList
with your integers if not just create one from the array.
ListView lv = new ListView();
ObservableList integerArray = FXCollections.observableArrayList();
//set the items
lv.setItems(integerArray);
//add a change listener to the observable list
integerArray.addListener(new ListChangeListener() {
@Override
public void onChanged(Change change) {
//set the height of the ListView accordingly
lv.setPrefHeight((lv.getItems().size() * 25));
}
});
So when you add or remove something from your observable list the listener will be triggered and the listview size will change
Upvotes: 1