FXML 性能是 JavaFX 的一个问题,如果您有复杂的屏幕并将它们分成使用 FXML 的小组件(为了可维护性/重用),那么它会变得非常慢。
由于 FXML 解析是在 UI 线程中进行的(不确定这一点,它仍然会阻止 JavaFX 应用程序线程),因此在处理 FXML 时,您无法在 JavaFX 中显示玻璃窗格/弹出窗口等。
我发现的唯一解决方法是在 FXML 为正在加载并在不再解析 FXML 文件时关闭它。
为此,我在 FXMLLoader 上方构建了一个外观。这也适用于 OpenGL 库(例如 LWJGL,而不是 Swing,任何 UI 和不在 JavaFX 应用程序线程中的东西都可以工作)。
我想知道是否存在更好的解决方案(仅限 JavaFX,不混合 UI 框架),因为这人为地增加了项目的复杂性,并且不能很好地与 OpenJFX 端口一起移植。