在Android上按FX ComboBox时出现java.lang.StackOverflowError

Roy*_*Roy 0 stack-overflow android javafx javafxports

在Android上使用JavaFXPorts(在Asus Transformer Prime TF201平板电脑上使用Android 4.1.1)时,按下ComboBox时会抛出java.lang.StackOverflowError(请参阅下面的堆栈跟踪的顶部堆栈).

它发生在我的FX应用程序中的ComboBox中,并且使用Ensemble中的ComboBox示例也可100%重现.换句话说:不能使用JavaFX ComboBox.

我知道许多论坛上发布的Android堆栈大小限制,并且有关Android UI和Android API发生时应采取的操作的各种建议.但是,在使用JavaFX UI和JavaFXPorts时无法找到相关的想法.

任何修复\ tweak\workaround的想法都将非常感激.

E/AndroidRuntime(32212): FATAL EXCEPTION: JavaFX Application Thread
E/AndroidRuntime(32212): java.lang.StackOverflowError
E/AndroidRuntime(32212):        at javafx.scene.Node.getTransformedBounds(Node.java:3422)
E/AndroidRuntime(32212):        at javafx.scene.Parent.getChildTransformedBounds(Parent.java:1724)
E/AndroidRuntime(32212):        at javafx.scene.Parent.recomputeBounds(Parent.java:1516)
E/AndroidRuntime(32212):        at javafx.scene.Parent.impl_computeGeomBounds(Parent.java:1380)
E/AndroidRuntime(32212):        at javafx.scene.layout.Region.impl_computeGeomBounds(Region.java:3078)
E/AndroidRuntime(32212):        at javafx.scene.Node.updateGeomBounds(Node.java:3577)
E/AndroidRuntime(32212):        at javafx.scene.Node.getGeomBounds(Node.java:3530)
Run Code Online (Sandbox Code Playgroud)

Jos*_*eda 7

您可以创建该java.custom.properties文件,并在其中包含此属性:

monocle.stackSize=128000
Run Code Online (Sandbox Code Playgroud)

您也可以通过将其包含在新值中来覆盖其他系统属性.

将文件放在类路径的根目录下,例如在src/android/resources项目的文件夹中.

您可以 此处找到此常见问题解答以及此处的JavaFXPorts的所有文档.

检查这是否解决了您的异常.