使用 JavaFX 8 的新功能 SortedList,绑定到 TableView 排序比较器。我的实现看起来像:
SortedList<T> sorted = myObservableList.sorted();
myTable.setItems(sorted);
sorted.comparatorProperty().bind(myTable.comparatorProperty());
myObservableList启动时为空ObservableList。我myTable通过 FXML 设置比较器属性。
我的用例是:
- 填充
myObservableList数据(排序和显示工作正常) - 清除->以负索引
myObservableList抛出java.lang.ArrayIndexOutOfBoundsException - 重新填充
myObservableList一些其他数据
我不知道为什么清除支持列表myObservableList会引发错误。为什么 sortedlist 在清除时正在寻找索引?我首先尝试清除排序列表,但不支持此操作。