【发布时间】:2016-11-16 13:15:29
【问题描述】:
这是关于实现一个 ListView 的选择监听器。
listView.setItems(FXCollections.observableList(content.getListContent()));
listView.getSelectionModel().selectedItemProperty().addListener(new ChangeListener<String>() {
@Override
public void changed(ObservableValue<? extends String> observableValue, String s, String s2) {
System.out.println("Selected item: " + s2);
}
});
我收到此错误消息:
error: no suitable method found for addListener(<anonymous ChangeListener<String>>)
listView.getSelectionModel().selectedItemProperty().addListener(new ChangeListener<String>() {
method Observable.addListener(InvalidationListener) is not applicable
(argument mismatch; <anonymous ChangeListener<String>> cannot be converted to InvalidationListener)
method ObservableValue.addListener(ChangeListener<? super Warning>) is not applicable
(argument mismatch; <anonymous ChangeListener<String>> cannot be converted to ChangeListener<? super Warning>)
我不知道如何解决这个问题。有人可以帮忙吗?提前致谢。
【问题讨论】:
-
请出示
listView的声明。content.getListContent()的返回类型是什么? -
content,getListContent()的返回类型为List<Warning>,ListView的返回类型也是ListView<Warning>。 -
那其实和报错信息不一致。
-
对不起,类型是
Warning,我编辑了我的评论。
标签: listview javafx selection changelistener