2016-02-05 61 views
0

我有一個靜態列表中配置類更新JavaFX的ListView控件時,列表<Object> DEVICELIST改變

public class Config { 
    public static ObservableList<Device> OnlineDevicesList = FXCollections.observableArrayList(); 
} 

當名單得到了改變,我需要更改項目在

public class MainViewController { 
    @FXML ListView<Device> lvOnlineDevices; 
    public void initialize() { 
     lvOnlineDevices.getItems().addAll(Config.OnlineDevicesList); 
    } 
} 

我怎麼能去做?

+0

有更好的方法來獲取數據到控制器比使用'靜態'看到這個答案︰http://stackoverflow.com/a/14190310/2991525 – fabian

回答

1

嘗試

lvOnlineDevices.setItems(FXCollections.observableArrayList(OnlineDevicesList)) 

但我建議在你的配置使用的ObservableList,他們再不必evertime你有新的項目把它轉換。

+0

我試過了。但它仍然沒有更新 –

+0

我也更新了我的帖子。你可以看到列表現在已經是一個observableArrayList了。但它不會自動更新 –

+0

我的意思是使用setItems()而不是getItems()。addAll() –

相關問題