私はRecyclerViewを使用してCardViewを表示しています。OutOfMemory Exception RecyclerViewのImageViewにAndroidのカスタムビットマップイメージをロードします。
- ビットマップが動的に作成された基本的なビットマップ
でのTextView
いくつかの上下スクロールの後、私はOutOfMemoryExceptionを取得します。
私はそれをどのように処理するのか分かりませんか? LRUCacheを使用する必要がありますか? またはPicassoのような第三者図書館 - これはURLとIDのみで動作するようです。
は、すべてのヘルプは大歓迎
更新:
public class ManageProfileAdapter : RecyclerView.Adapter
{
public override void OnBindViewHolder(RecyclerView.ViewHolder holder, int position)
{
ManageProfileViewHolder vh = holder as ManageProfileViewHolder;
vh.Caption.Text = profiles[position].Name;
vh.Thumbnail.SetProfile(profiles[position].Profile);
}
}
サムネイルクラスです(ビットマップを含ん)ビューから派生したカスタムクラス:
public class ThumbnailView : View
{
private Canvas DrawCanvas;
private Bitmap CanvasBitmap;
}
ビットマップをキャンバスに描かれています。
RecyclerViewのViewAdapterのコードを最低限ご提供いただけますか?可能なのは、そのアダプターのカードビューから外したときに、メモリを再レンダリングするのではなく、多くのビットマップを保持することです。 –
Picassoはアセットディレクトリまたはローカルデバイスのストレージの両方からローカルイメージでも動作します – bvanvelsen
このトピックをも参照してください:http://stackoverflow.com/questions/477572/strange-out-of-memory-issue-while-loading-an -image-to-a-bitmap-object?rq = 1 – bvanvelsen