ChoiceBox未在JavaFX中设置ObservableList

ChoiceBox未在JavaFX中设置ObservableList,java,javafx,Java,Javafx,我的JavaFx应用程序中有一个名为choiceBoxPizza的ChoiceBox 在我的控制器中,我声明: @FXML private ChoiceBox choiceBoxPizza; 我的函数包含一些测试数据,它是: private void fillChoiceBoxPizza(){ try { List<String> list = new ArrayList<String>(); list.add("Pizza A

我的JavaFx应用程序中有一个名为choiceBoxPizza的ChoiceBox

在我的控制器中,我声明:

@FXML 
private ChoiceBox choiceBoxPizza;
我的函数包含一些测试数据,它是:

private void fillChoiceBoxPizza(){
    try {
        List<String> list = new ArrayList<String>();
        list.add("Pizza A");
        list.add("Pizza B");
        list.add("Pizza C");
        ObservableList obList = FXCollections.observableList(list);
        choiceBoxPizza = new ChoiceBox<>(obList);
    } catch (Exception e) {
        // TODO Auto-generated catch block
        System.out.println(e.toString());
    }

}
private void fillChoiceBoxPizza(){
试一试{
列表=新的ArrayList();
列表。添加(“比萨饼A”);
列表。添加(“比萨饼B”);
列表。添加(“披萨C”);
ObservableList obList=FXCollections.ObservableList(列表);
ChoiceBox Pizza=新的ChoiceBox(义务);
}捕获(例外e){
//TODO自动生成的捕捉块
System.out.println(例如toString());
}
}
因此,应使用
列表填写。奇怪的是,我没有得到任何异常,并且choiceBox在方法调用之后仍然是空的

我的逻辑有错误吗?

替换这一行:

choiceBoxPizza = new ChoiceBox<>(obList);
您不应该初始化
.fxml
文件中已声明的元素。是关于JavaFX中初始化过程如何工作的更广泛的解释

希望这有帮助

choiceBoxPizza.setItems(obList)