大きなビットマップ(フルスクリーン、wvga)がたくさんあるギャラリーを表示するとき、私は頻繁にメモリの問題を解決します。私はリサイクルされていないビットマップに関連していると考えています。いつビットマップをリサイクルすることができますか?AndroidビューのSimpleCursorAdapterで、ギャラリービューでビットマップをリサイクルすることはできますか?
また、simpleCursorAdapterのgetViewメソッドでは、convertViewは常にnullであることに気付きました。これは古いビューがリサイクルされていないことを意味します。前後にスクロールしても、毎回新しいビューが作成されます。ただし、前後にスクロールしてもメモリ不足の問題は発生しません。これは、イメージの総数が十分に大きい場合にのみ発生します。
ListViewで同じアダプタを使用すると、ビューがリサイクルされるため、ギャラリーに問題があるようです。
ビューやビットマップを強制的にリサイクルするにはどうすればよいですか?ギャラリーのサイズやビットマップの品質を落とさずに、メモリを管理できることは他に何かあります。
あなたは 'purgeable'のようなさまざまなビットマップオプションを試しましたか?ギャラリーにプレスケールまたは高品質の画像を使用していますか?メモリ管理のために 'SoftReference' /' WeakReference'を見たことがありますか? –