Java 从数组列表中删除项时应用程序崩溃
尝试从数组列表中删除对象时,我的应用程序崩溃:Java 从数组列表中删除项时应用程序崩溃,java,android,android-custom-view,paint,eraser,Java,Android,Android Custom View,Paint,Eraser,尝试从数组列表中删除对象时,我的应用程序崩溃: for (ColouredPaths p : mTouches) { if(erase){ if(p!=null) { mTouches.remove(p);} } 为什么会发生这种情况以及如何修复?如果您得到一个ConcurrentException,这意味着您正在修改一个列表。在ArrayList中,您不能这样做。尝试像这样使用
for (ColouredPaths p : mTouches) {
if(erase){
if(p!=null)
{ mTouches.remove(p);}
}
为什么会发生这种情况以及如何修复?如果您得到一个
ConcurrentException
,这意味着您正在修改一个列表。在ArrayList中,您不能这样做。尝试像这样使用队列
,而不是数组列表
:
Queue<ColouredPaths> mTouches = new ConcurrentLinkedQueue<>();
Queue mTouches=new ConcurrentLinkedQueue();
你可以用同样的方法循环,但它不会再崩溃。@K.Sopheak这不是beta版用户构建,这是it@K.Sopheak这不是beta版用户构建,这是itNo,这是一种Java
Collections
行为。我在回答中解释了。@rgl解决了吗?我已经使用了ConcurrentLinkedQueue
s一段时间了,它们似乎工作得很好。您能帮我将橡皮擦添加到此视图中吗!!因为我不能删除接触点,我只能删除整个油漆,提前谢谢