Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Codenameone 使用CircleProgress cn1lib时iOS应用程序崩溃_Codenameone - Fatal编程技术网

Codenameone 使用CircleProgress cn1lib时iOS应用程序崩溃

Codenameone 使用CircleProgress cn1lib时iOS应用程序崩溃,codenameone,Codenameone,我的iOS应用程序在显示我使用CircleProgress cn1lib的表单时崩溃。同样,在Android上,这从一开始就运行良好 我使用CircleProgress将代码缩减为 CircleProgress cp = new CircleProgress(); cp.setProgress(progress); 对于TableLayout容器中的几行,在for循环中调用该函数。 如果代码被注释,因此没有被使用,那么一切都可以正常工作 更新1 我仍然不知道错误在xcode中的确切位置,但是:

我的iOS应用程序在显示我使用CircleProgress cn1lib的表单时崩溃。同样,在Android上,这从一开始就运行良好

我使用CircleProgress将代码缩减为

CircleProgress cp = new CircleProgress();
cp.setProgress(progress);
对于TableLayout容器中的几行,在for循环中调用该函数。 如果代码被注释,因此没有被使用,那么一切都可以正常工作

更新1 我仍然不知道错误在xcode中的确切位置,但是:

@史蒂夫·汉纳: 我自己发现了错误:如果进度设置为0,应用程序将崩溃

因此,这解决了我的问题:

if(progress > 0)
   cp.setProgress(0);
通过不设置进度,它将默认显示进度为0的循环进度

更新2: 这个问题现在已经解决了。

如果您在xcode中出现了可再现的崩溃,您可以包含来自xcode的堆栈跟踪吗?我根据您描述的内容创建了一个测试用例,但似乎无法再现该问题。如果您可以生成一个小测试用例并将其发布到CN1问题跟踪器,我会看一看。我想到的唯一一件可能会导致这种情况的事情是在用户界面关闭EDT的情况下做一些事情。确保您在EDT上进行UI操作。嗨,Shai,我添加了由xcode“bt”命令生成的堆栈跟踪。嗨,Steve,我没有在任何地方生成线程,现在我在调用CircleProgress构造函数之前包含了“Display.getInstance().isEdt()”。我将尝试生成一个小测试用例,_isEdt()-方法在每次创建CircleProgress时都返回“true”。对于for循环中的5个循环进程,它被调用了5次。您是否也可以包括其他线程的堆栈跟踪?我想看看他们被困在哪里,特别关注EDT被困在哪里。