清除时出现java javafx sortedlist错误
使用JavaFX8新功能SortedList,绑定到TableView排序比较器。 我的实现看起来像:
SortedList<T> sorted = myObservableList.sorted();
myTable.setItems(sorted);
sorted.comparatorProperty().bind(myTable.comparatorProperty());
myObservableList
在启动时是空的ObservableList
。
我通过FXML设置了myTable
comparator属性
我的用例是:
- 用数据填充
myObservableList
(排序和显示工作正常) - 清除
myObservableList
->;用负索引抛出java.lang.ArrayIndexOutOfBoundsException
- 用其他数据重新填充
myObservableList
我不知道为什么清除备份列表会引发错误。为什么sortedlist在清算时寻找指数? 我首先尝试清除已排序的列表,但不支持此操作
# 1 楼答案
我升级到了最新版本
Build b114
,这修复了这个bug,因为它听起来像是一个FX bug但是,要小心,现在addAll()中断,需要创建for循环并调用add()