如何将JavaFX GUI拆分为具有良好性能的fxml文件?

时间:2014-04-22 15:49:10

标签: java javafx fxml

我正在开发一个企业级项目,JavaFX 8被选为该项目的前端技术。目标平台是基于Windows的平板电脑,因此性能更可能是一个问题。

应用程序由几十个屏幕(基本上是表单)组成,并决定将GUI描述拆分为无数的FXML文件,采用一种基于组件的方法(屏幕内的一些子窗格)将在他们自己的fxml中定义)。 Spring也用于插入所述组件内的控制器和服务。

主要问题是,现在,在启动时加载了200多个fxml(对于客户端应用程序),这需要大约20秒才能完成......这有点太明显了:(

我已经排除了Spring开销作为罪魁祸首(我们有一个Spring感知FXMLLoader实现,但大部分时间都花在load方法中。

我想知道这是否是正确的方法......在加载太多FXML文件时是否存在“可扩展性”问题?在JavaFX应用程序中尝试加载/缩小fxml的fxml数量的建议限制?

欢迎针对此性能问题提供任何提示或类似情况的反馈!谢谢。

1 个答案:

答案 0 :(得分:2)

尝试在启动时仅将您想要显示的部分加载到用户。

另请注意您在此处找到的效果问题:https://javafx-jira.kenai.com/secure/Dashboard.jspa

另请注意将FXML文件编译为.class文件的功能请求(尚未实现):https://javafx-jira.kenai.com/browse/RT-23527