CodenameOne调用Start()方法使应用程序崩溃

CodenameOne调用Start()方法使应用程序崩溃,codenameone,reload,Codenameone,Reload,在我的应用程序中,我使用一个按钮通过调用返回开始屏幕 newForm.removeAll(); Display.getInstance().lockOrientation(true); hi.start(); 从另一种形式 一般来说,这可以正常工作,但有时应用程序会冻结,我必须关闭并重新启动它 冻结是由于从其他窗体调用hi.start()造成的吗 从不同的位置调用hi.start()是否是返回开始屏幕的最佳方式 我认为start方法不仅仅是显示开始表单。更好的方法是从头开始构建表单,然后在

在我的应用程序中,我使用一个按钮通过调用返回开始屏幕

newForm.removeAll();
Display.getInstance().lockOrientation(true);

hi.start(); 
从另一种形式

一般来说,这可以正常工作,但有时应用程序会冻结,我必须关闭并重新启动它

冻结是由于从其他窗体调用hi.start()造成的吗


从不同的位置调用hi.start()是否是返回开始屏幕的最佳方式

我认为start方法不仅仅是显示开始表单。更好的方法是从头开始构建表单,然后在需要返回时显示它。如果使用“showBack”,它将使用相反的动画过渡到窗体。这将使用最少的内存。如果需要特殊行为,可以将表单子类化


如果有动态内容,请使用首选项或存储来存储开始表单的状态。

正如James所说,调用
start()
可能不是一个好主意。但是,
lockOrientation()
方法只能在Android上使用。在iOS上,应用程序要么方向锁定,要么不锁定。您需要在构建提示中声明感谢您的澄清,Shai。非常感谢您的出色澄清,@James H。我已经发现start方法在幕后还有很多事情要做。。。。