private final ObservableList<City> cityList = FXCollections.observableArrayList(city
        -> new Observable[]{
            city.cityNameProperty(),
            city.cityLonProperty(),
            city.cityLatProperty()});

public ObservableList<City> getCityList() {
    return cityList;
}


如何从observableArrayList内的一个对象检索cityNameProperty以设置列表视图?

我做了

cityView.setItems(cityList.getCityList());


但这是在设置对象(city @ 59f..etc),而我需要对象的属性。

最佳答案

使用单元工厂:

cityView.setCellFactory(lv -> new ListCell<City>() {
    @Override
    protected void updateItem(City city, boolean empty) {
        super.updateItem(city, empty);
        setText(empty ? null : city.getCityName());
    }
});

09-29 22:16