cardslib内存不足错误

时间:2015-03-20 15:34:20

标签: android listview view cardslib

我是许多不同类型卡片的实例,它们是卡片的子类。我使用List来收集它们。

每次,listview都是实例。我请求服务器和服务器响应我json实例每种类型的卡。之后我使用CardArrayAdapter进行适配器视图。

像这样:

//init cards from json
List<Card> _cards = getCards(data, getActivity());
adapter.addAll(_cards);

当listview滑到底部时,我会再次请求并添加到适配器。

但我发现:我无法向适配器添加无限cards。 它似乎是oom。

我不知道是否由于没有RecycleBin而导致回收视图,或者只是因为在内存中构建了太多的卡(视图)。(可能我在说同样的事情)

所以,我该如何解决?

logcat:它只是简单的oom log

03-23 11:44:26.383  16371-16557/com.kingnez.umasou.app E/ImageLoader﹕ null
java.lang.OutOfMemoryError
        at android.graphics.BitmapFactory.nativeDecodeStream(Native Method)
        at android.graphics.BitmapFactory.decodeStreamInternal(BitmapFactory.java:620)
        at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:596)
        at com.nostra13.universalimageloader.core.decode.BaseImageDecoder.decode(BaseImageDecoder.java:78)
        at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.decodeImage(LoadAndDisplayImageTask.java:264)
        at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.tryLoadBitmap(LoadAndDisplayImageTask.java:237)
        at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.run(LoadAndDisplayImageTask.java:135)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
        at java.lang.Thread.run(Thread.java:841)

0 个答案:

没有答案