Java 将提取器添加到现有ObservableList
我有一个模型类Java 将提取器添加到现有ObservableList,java,javafx,javafx-8,observable,Java,Javafx,Javafx 8,Observable,我有一个模型类ModelParent,它有一个可观察列表observebleList,其中ModelChild是另一个模型类,具有自己的属性 class ModelParent { private final ObservableList<ModelChild> children = FXCollections.observableArrayList(); public ObservableList<ModelChild> getChildren()
ModelParent
,它有一个可观察列表observebleList
,其中ModelChild
是另一个模型类,具有自己的属性
class ModelParent {
private final ObservableList<ModelChild> children = FXCollections.observableArrayList();
public ObservableList<ModelChild> getChildren() {
return children;
}
// More properties...
}
类模型父对象{
private final ObservableList children=FXCollections.observableArrayList();
公共观察列表getChildren(){
返回儿童;
}
//更多属性。。。
}
在某些情况下,我希望对列表应用一个提取器——也就是说,当列表更改时,或者当列表中的某个成员更改时,能够收到通知。问题是,在不同的场合,我会希望看到不同的属性,有时我根本不在乎它们
我知道我可以在创建可观察列表时将提取器应用于该列表,但是否可以将提取器添加到现有列表中?或者创建一个由原始列表支持的可观察列表(以两种方式反映更改),但使用额外的提取器
我看到了,但它明确表示直接对支持列表所做的更改不会触发更改事件。问题是同一个模型对象实例可能由不同的对象持有,而该对象不关心这个新的提取器,并且会很高兴地在原始的observeList
上添加或删除项目
Java8中存在这样的东西吗?或者有一种简单的方法可以自己实现吗?实际上,我想我可以用提取器创建一个新的observeList
,然后使用bindcontents
。那应该行的,对吧?我只是回来建议。。。