DingMouRen / LayoutManagerGroup

:point_right: Customize the LayoutManager of RecyclerView(自定义LayoutManager)
4.98k stars 680 forks source link

OOM了 #3

Closed idic779 closed 6 years ago

idic779 commented 6 years ago

Process: com.dingmouren.example.layoutmanagergroup, PID: 18719 java.lang.OutOfMemoryError: Failed to allocate a 921612 byte allocation with 783352 free bytes and 764KB until OOM at com.bumptech.glide.gifdecoder.GifDecoder.setData(GifDecoder.java:380) at com.bumptech.glide.load.resource.gif.GifDrawable.(GifDrawable.java:92) at com.bumptech.glide.load.resource.gif.GifDrawable$GifState.newDrawable(GifDrawable.java:368) at com.bumptech.glide.load.resource.drawable.DrawableResource.get(DrawableResource.java:32) at com.bumptech.glide.load.resource.drawable.DrawableResource.get(DrawableResource.java:16) at com.bumptech.glide.load.engine.EngineResource.get(EngineResource.java:44) at com.bumptech.glide.request.GenericRequest.onResourceReady(GenericRequest.java:487) at com.bumptech.glide.load.engine.Engine.load(Engine.java:155) at com.bumptech.glide.request.GenericRequest.onSizeReady(GenericRequest.java:449) at com.bumptech.glide.request.target.ViewTarget$SizeDeterminer.getSize(ViewTarget.java:211) at com.bumptech.glide.request.target.ViewTarget.getSize(ViewTarget.java:100) at com.bumptech.glide.request.GenericRequest.begin(GenericRequest.java:272) at com.bumptech.glide.manager.RequestTracker.runRequest(RequestTracker.java:37) at com.bumptech.glide.GenericRequestBuilder.into(GenericRequestBuilder.java:661) at com.bumptech.glide.GenericRequestBuilder.into(GenericRequestBuilder.java:697) at com.dingmouren.example.layoutmanagergroup.activity.SkidRightActivity_1$MyAdapter.onBindViewHolder(SkidRightActivity_1.java:89) at com.dingmouren.example.layoutmanagergroup.activity.SkidRightActivity_1$MyAdapter.onBindViewHolder(SkidRightActivity_1.java:68) at android.support.v7.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:6279) at android.support.v7.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:6312) at android.support.v7.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline(RecyclerView.java:5258) at android.support.v7.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:5521) at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5363) at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5359) at com.dingmouren.layoutmanagergroup.skidright.SkidRightLayoutManager.fill(SkidRightLayoutManager.java:128) 生命周期过长了,锤子机型

DingMouRen commented 6 years ago

@idic779 SkidRightLayoutManager只是个例子,OOM是因为加载的gif图导致的,你需要根据自己实际开发区使用。并且OOM问题是需要你自己去处理的,这就是一般的RecyclerView,SkidRightLayoutManager只是改变排列,内存与你加载的资源有关系。

idic779 commented 6 years ago

@DingMouRen 知道,这个例子不能用这个全局context