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