各ページは、背景として設定された異なる画像を持つフラグメントです。遅延なくスムーズにスクロールできるようにする必要があるため、offscreenpage を 20 (viewpager 内のアイテム数) に設定しましたが、このエラーが頻繁に発生します。
java.lang.OutOfMemoryError: bitmap size exceeds VM budget
私はすでに画像を最大に圧縮しています(圧縮されたJPEGS)。この問題を解決する方法はありますか?
各ページは、背景として設定された異なる画像を持つフラグメントです。遅延なくスムーズにスクロールできるようにする必要があるため、offscreenpage を 20 (viewpager 内のアイテム数) に設定しましたが、このエラーが頻繁に発生します。
java.lang.OutOfMemoryError: bitmap size exceeds VM budget
私はすでに画像を最大に圧縮しています(圧縮されたJPEGS)。この問題を解決する方法はありますか?
Android 開発者サイトのトレーニング セクションにすばらしい記事があります: http://developer.android.com/training/displaying-bitmaps/index.html ... Android アプリケーションでキャッシュ メカニズムを使用する方法を示しています。ViewPager
これを実装に採用できます。
フラグメントを切り替えると、背景画像を動的にロード/アンロードします。特にアニメーションを使用してトランジション (フェードイン/フェードアウト) を非表示にする場合は、気づかないほど速くロードする必要があります。または、4 つまたは 5 つ (各方向に 2 つ) をロードして、非常に速くスクロールした場合にのみフェードが表示されるようにすることをお勧めします。
ビットマップのサイズは、画像のピクセル密度によって異なります。背景画像の MPx を減らすようにしてください。