0

使用 JavaFX 8 的新功能 SortedList,绑定到 TableView 排序比较器。我的实现看起来像:

SortedList<T> sorted = myObservableList.sorted();
myTable.setItems(sorted);
sorted.comparatorProperty().bind(myTable.comparatorProperty());

myObservableList启动时为空ObservableList。我myTable通过 FXML 设置比较器属性。

我的用例是:

  1. 填充myObservableList数据(排序和显示工作正常)
  2. 清除->以负索引myObservableList抛出java.lang.ArrayIndexOutOfBoundsException
  3. 重新填充myObservableList一些其他数据

我不知道为什么清除支持列表myObservableList会引发错误。为什么 sortedlist 在清除时正在寻找索引?我首先尝试清除排序列表,但不支持此操作。

4

1 回答 1

0

我升级到最新版本Build b114并修复了这个错误,因为它真的听起来像一个 FX 错误

但是,要小心,现在 addAll() 中断了,需要创建一个 for 循环并调用 add()。

于 2013-11-07T15:18:12.287 回答