我正在制作一个应用程序,我在Google地图中绘制了300行。它会很好地工作一段时间,但有时会出现此错误
FATAL EXCEPTION: main
07-01 10:33:38.990: ERROR/AndroidRuntime(10937): java.lang.OutOfMemoryError
07-01 10:33:38.990: ERROR/AndroidRuntime(10937): at java.util.ArrayList.add(ArrayList.java:123)
07-01 10:33:38.990: ERROR/AndroidRuntime(10937): at java.util.Collections$SynchronizedCollection.add(Collections.java:421)
答案 0 :(得分:0)
看起来你的ArrayList中有太多的元素。确保您的ArrayList中只有300行。 如果您不再需要ArrayList中的点,请确保将它们从ArrayList中删除,或者创建一个新的ArrayList。
答案 1 :(得分:0)
确保您的ArrayList具有足够大的初始大小,并且在添加元素时不会不断调整自身大小。调整大小将使其在每次超出其当前限制时以更大的容量创建自身的副本。或者,如果要保持固定大小,您可以使用LinkedList,甚至是常规数组。