Codenameone 如何在添加控件时停止绘制?

Codenameone 如何在添加控件时停止绘制?,codenameone,Codenameone,有时我在清除控件并将其重新添加到容器时会遇到此异常 我认为这与绘画问题有关,有没有办法在我完成添加控件之前停止绘制事件 03-10 14:00:36.435: W/System.err(13405): at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:255) 03-10 14:00:36.435: W/System.err(13405): at java.util.ArrayList.get(A

有时我在清除控件并将其重新添加到容器时会遇到此异常

我认为这与绘画问题有关,有没有办法在我完成添加控件之前停止绘制事件

03-10 14:00:36.435: W/System.err(13405):    at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:255)
03-10 14:00:36.435: W/System.err(13405):    at java.util.ArrayList.get(ArrayList.java:308)
03-10 14:00:36.435: W/System.err(13405):    at com.codename1.m.i.a(Container.java:1312)
03-10 14:00:36.435: W/System.err(13405):    at com.codename1.m.h.b(Component.java:1308)
03-10 14:00:36.435: W/System.err(13405):    at com.codename1.m.h.d(Component.java:1282)
03-10 14:00:36.435: W/System.err(13405):    at com.codename1.m.h.a(Component.java:1257)
03-10 14:00:36.435: W/System.err(13405):    at com.codename1.m.i.a(Container.java:1313)
03-10 14:00:36.435: W/System.err(13405):    at com.codename1.m.h.b(Component.java:1302)
03-10 14:00:36.435: W/System.err(13405):    at com.codename1.m.h.d(Component.java:1282)
03-10 14:00:36.435: W/System.err(13405):    at com.codename1.m.h.a(Component.java:1257)
03-10 14:00:36.435: W/System.err(13405):    at com.codename1.m.i.a(Container.java:1313)
03-10 14:00:36.445: W/System.err(13405):    at com.codename1.m.h.b(Component.java:1308)
03-10 14:00:36.445: W/System.err(13405):    at com.codename1.m.h.d(Component.java:1282)
03-10 14:00:36.445: W/System.err(13405):    at com.codename1.m.h.a(Component.java:1257)
03-10 14:00:36.445: W/System.err(13405):    at com.codename1.m.i.a(Container.java:1313)
03-10 14:00:36.445: W/System.err(13405):    at com.codename1.m.h.b(Component.java:1308)
03-10 14:00:36.445: W/System.err(13405):    at com.codename1.m.h.d(Component.java:1282)
03-10 14:00:36.445: W/System.err(13405):    at com.codename1.m.h.a(Component.java:1257)
03-10 14:00:36.445: W/System.err(13405):    at com.codename1.m.i.a(Container.java:1313)
03-10 14:00:36.445: W/System.err(13405):    at com.codename1.m.p.a(Form.java:3099)
03-10 14:00:36.445: W/System.err(13405):    at com.codename1.m.h.b(Component.java:1308)
03-10 14:00:36.445: W/System.err(13405):    at com.codename1.m.p.b(Form.java:3109)
03-10 14:00:36.445: W/System.err(13405):    at com.codename1.m.h.d(Component.java:1282)
03-10 14:00:36.445: W/System.err(13405):    at com.codename1.m.h.a(Component.java:1257)
03-10 14:00:36.445: W/System.err(13405):    at com.codename1.m.h.d(Component.java:1225)
03-10 14:00:36.455: W/System.err(13405):    at com.codename1.m.h.c(Component.java:1510)
03-10 14:00:36.455: W/System.err(13405):    at com.codename1.m.h.i(Component.java:1457)
03-10 14:00:36.455: W/System.err(13405):    at com.codename1.impl.a.p(CodenameOneImplementation.java:516)
03-10 14:00:36.455: W/System.err(13405):    at com.codename1.m.l.j(Display.java:1071)
03-10 14:00:36.455: W/System.err(13405):    at com.codename1.m.l.i(Display.java:993)
03-10 14:00:36.455: W/System.err(13405):    at com.codename1.m.ab.run(RunnableWrapper.java:120)
03-10 14:00:36.455: W/System.err(13405):    at com.codename1.impl.b$1.run(CodenameOneThread.java:60)
03-10 14:00:36.455: W/System.err(13405):    at java.lang.Thread.run(Thread.java:841)

决不能在非事件分派线程(EDT)的线程中更改UI

绘画发生在EDT以及所有其他事件上,因此停止绘画不是问题。在这种情况下,不需要同步或进行任何详细的操作

您可以使用EDT违规检测工具查找代码中的错误。见: