我正在打一个聊天客户端。因此,登录后,我将花名册检索到我的javafx应用程序中。为了听我的朋友是否有空,我尝试使用这样的监听器:
rosterList.addListener(new ChangeListener<ObservableList<RosterDTO>>(){
@Override
public void changed(
ObservableValue<? extends ObservableList<RosterDTO>> observable,
ObservableList<RosterDTO> oldValue,
ObservableList<RosterDTO> newValue) {
rosterList = loginManager.getXmppManager().displayBuddyList();
System.out.println("x----" + rosterList.toString());
}
因此,在输入代码后,eclipse返回:
方法中的方法addListener(ListChangeListener)
类型ObservableList不适用于参数
(新的ChangeListener>(){})
为什么会这样呢?我的监听器应如何实现?
提前致谢。
最佳答案
ChangeListener不是ListChangeListener。
ObservableList.addListener需要一个ListChangeListener作为其参数。
JavaFX collections tutorial详细说明如何使用ListChangeListeners。