単一のフラグメントを含むアクティビティがあり、そのフラグメントには、他のフラグメントをページングする FragmentPagerAdapter を持つ ViewPager があります。
--> ChildFragment
MyActivity -> HostFragment w ViewPager --> ChildFragment
--> ChildFragment
ChildFragment では、Android-Universal-Image-Loader ライブラリを使用していくつかの画像を表示します。Nexus S では悪名高い
java.lang.OutOfMemoryError: bitmap size exceeds VM budget
約 10 個の Childfragments がスワイプされた後 (約 50 ~ 100 ビットマップ)、非常に高速です。推奨されるすべての設定をUIL構成に設定しようとしましたが、チャッシングを無効にしましたが、役に立ちませんでした。また、onDestroyView で Childfragment のすべてのビットマップをリサイクルしようとしましたが、役に立ちませんでした。
ネストされたフラグメントを使用したセットアップは、この問題と関係がありますか? 別のアプリでは、Viewpager と Childfragments (中央のフラグメントなし) を持つアクティビティのみがあり、この問題はありません。
Eclipse の DDMS ビューでヒープ サイズを確認しましたが、ヒープ サイズの 45% がまだ空いているときにアプリがクラッシュするのはなぜですか? ヒープ ビューには次のように書か
Heap size 10 MB Allocated 5,4 MB Free 4,5 MB
れています。