FXML性能与JavaFX的一个问题,如果你有复杂的屏幕和他们使用FXML已经分成小的组件(可维护性/再利用),那么它可以变得很慢。忙弹出时FXML解析太慢
由于FXML解析是在UI线程中完成的(不确定这是否仍然阻塞了JavaFX应用程序线程),所以在FXML处理过程中无法在JavaFX中显示glasspane/popup/etc。
我发现的唯一解决方法是使用Swing弹出窗口(因为它在Swing UI线程中,您仍然可以显示某些内容)向用户提供反馈(它正在工作/不是bug /稍微多点)当FXML被加载时,并在没有更多的FXML文件被解析时关闭它。
我已经建立了上述FXMLLoader一个门面做。此外,这也适用于OpenGL库(例如LWJGL,而不是Swing,任何是UI且不在JavaFX应用程序线程中的作品)。
我在想,如果一个更好的解决方案存在(JavaFX的唯一,不是混合UI框架),因为这人为地增加了复杂性的项目,不会的OpenJFX端口被移植好。
谢谢,我会试一试。编译FXML有许多问题,例如,它会生成带有不赞成使用的Builder API的代码。另外fx:root似乎与它不兼容。 – zenbeni 2014-12-05 08:32:53
它的工作原理。太好了。我将看到我现在可以使用异步构建的FXML组件来做什么。 – zenbeni 2014-12-08 15:39:43