我有一个foreach循环遍历矢量中的每个对象。当我调试代码时,它成功运行矢量中的第一个对象。但是当它尝试运行第二个对象的循环时,它会失败。我是当然向量中有多个元素。这个foreach循环有什么问题.. ??? Android
for(Object shape : vecForShapes)
{
currentNode = (Drawable) shape;
newNode = getResources().getDrawable(R.drawable.nodered);
newNode.setBounds(currentNode.getBounds());
vecForShapes.remove(currentNode);
vecForShapes.add(newNode);
}
所以基本上我的问题是,为什么这个循环失败?我真的不明白这里有什么问题。
P.S.我的最终目标是从矢量中删除currentNode
,将其替换为newNode
,然后在我的onDraw
方法中重新绘制整个矢量。
感谢
你是什么意思:它失败了?你有异常吗? – assylias 2012-03-11 20:26:09
这很可能是你的问题:http://stackoverflow.com/questions/7080208/java-exception-when-remove-a-record-inside-a-list-in-a-for-each-loop – assylias 2012-03-11 20:28:47
请显示定义你的vecForShapes。 – PearsonArtPhoto 2012-03-11 20:29:05