首先,我是JavaFX世界的新手,所以我可能缺乏一些基本知识,抱歉。此外,这是我第一次提出问题,所以我不知道如何制定它。
我想做的是非常基本的:我有多个页面,用户可以通过按下/返回来切换。对代码进行编码的最佳方法是什么,以便当用户返回页面时,用户所做的更改会在那里进行?我不仅希望TextFields具有相同的内容,还要具有属性。注意:每个页面都有自己的Controller,它实现了一个通用接口。
我已经尝试通过加载程序设置页面并使用loader.setController()
方法并在首次创建时从loader.getController()
移交控制器对象,但似乎没有影响。
对不起,如果这已经在某个地方得到解答,我找不到它。
提前感谢任何花时间帮助我的人!
编辑: 用于更改ControllerHolder类中页面的代码
ResourceBundle bundle = FXMLUtil.getResourceBundle();
FXMLLoader loader = new FXMLLoader();
loader.setLocation(Main.class.getResource(
FXMLUtil.getFXMLPageByIndex(pageNumber)
));
loader.setResources(bundle);
initWizardHolder.getChildren().setAll(
(Node) loader.load());
currentController = loader.getController();