小智 6
您的问题可以通过两个步骤来解决:将 FilteredList 设置到您的 ListView,并将侦听器绑定到您的 TextField。
//'myListView' is your ListView, 'myTextField' is your textfield
ObservableList<String> rawData= FXCollections.observableArrayList();
FilteredList<String> filteredList= new FilteredList<>(rawData, data -> true);
myListView.setItems(filteredList);
myTextField.textProperty().addListener(((observable, oldValue, newValue) -> {
filteredList.setPredicate(data -> {
if (newValue == null || newValue.isEmpty()){
return true;
}
String lowerCaseSearch=newValue.toLowerCase();
return String.valueOf(data.contains(lowerCaseSearch);
});
}));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3440 次 |
| 最近记录: |