JavaFX 选项卡和控制器作用域

JavaFX Tabs and Controller Scope

我的 JavaFX 8 应用程序中有一个配置窗格,它分布在选项卡中的多个选项卡中。目前我被迫拆分选项卡以进行更长的配置过程。

我知道这两个选项卡有两个 .fxml 文件,但我应该能够为两者使用相同的控制器。但是,目前,如果我对一个选项卡进行更改,则另一个选项卡看不到更改。我猜它会创建一个单独的控制器实例。两个 .fxml 选项卡是否可以使用相同的控制器实例,以便可以在两个选项卡之间共享信息?

更多说明的示例: Tab1 包含电子邮件、名字等的文本字段输入。 Tab2 使用电子邮件信息并生成用户名,并允许用户使用生成的值修改其他设置。

要在多个 FXML 加载之间重用控制器,您可以使用 fxmlLoader.setController() or fxmlLoader.setControllerFactory()

我真的不推荐重用控制器方法,所以我不会在这里 post 详细介绍它的代码。相反,我推荐 passing parameters.