【发布时间】:2015-06-10 08:09:50
【问题描述】:
我想在 observableList 中修改名为 EventShowable 的对象时触发一些代码。 这是我的代码。
mainApp.getCalendars().get(i).getListEvents().addListener(new ListChangeListener<EventShowable>() {
@Override
public void onChanged(ListChangeListener.Change<? extends EventShowable> c) {
while (c.next()) {
if (c.wasUpdated()) {
//this doesn't work.
//perform updated
}
if (c.wasAdded()){
//perform something }
wasAdded() 执行良好,但 wasUpdate() 则不行。 修改 EventShowable 后如何获得有效的东西?谢谢
P.S:在 JavaDoc 中: 公共布尔 wasUpdated() 表示 getFrom()(包括)到 getTo() 排他之间的元素发生了变化。 这是唯一可选的事件类型,可能不会被所有 ObservableLists 触发。 https://docs.oracle.com/javase/8/javafx/api/javafx/collections/ListChangeListener.Change.html#wasUpdated--
【问题讨论】: