在fxml控制器中外部调用initialize()方法而不是自动调用

时间:2017-04-07 13:25:44

标签: controller javafx-8 fxml fxmlloader

我有6个fxml文件,有一个控制器。我需要初始化方法不在第一个fxml上,而是在第五个fxml文件(PasswordArray.fxml)上进行自定义按钮。由于在加载第一个fxml文件(Home.fxml)时会自动调用initialize()方法,因此会显示错误。如何在PasswordArray.fxml之后使用now initialize方法。 我在互联网上搜索,但没有找到我的问题的任何解决方案。我应该使用不同的控制器,因为我需要多个fxml文件的初始化方法。Main FXML File (Home.fxml)

Controller (MajorProjectController.java) [initialize()方法] [3]

1 个答案:

答案 0 :(得分:0)

您可以在initialize方法的URL location参数中检查文件名,并相应地触发您的操作。请注意,FXMLLoader将为每个单独的FXML创建一个单独的控制器类实例 - 除非您手动提供给FXMLLoader实例。