在ViewPager中使用EpoxyRecyclerView
@Override
public Object instantiateItem(ViewGroup collection, int position) {
LayoutInflater inflater = LayoutInflater.from(mContext);
ViewGroup layout = (ViewGroup) inflater.inflate(idLists.get(position), collection, false);
collection.addView(layout);
splitRecyclerView = (EpoxyRecyclerView) layout.findViewById(R.id.split_recycler_view);
splitRecyclerView.setLayoutManager(new LinearLayoutManager(this.mContext));
splitRecyclerView.setController(controller);
updateController(position);
return layout;
}
错误:
09-03 22:54:36.394 23354-23354 / com.milcgroup.one E / AndroidRuntime: 致命异常:主要 流程:com.milcgroup.one,PID:23354 java.lang.IllegalStateException:此EpoxyController的适配器已添加到多个ReyclerView中。环氧树脂不支持 将适配器附加到多个RecyclerViews,因为保存状态 将无法正常工作。如果您不打算连接适配器 到多个RecyclerViews,您可能会泄漏对前一个的引用 RecyclerView。确保从以前的任何适配器中卸下适配器 RecyclerViews(例如,如果适配器在Fragment中跨 多个onCreateView / onDestroyView周期)。看到 https://github.com/airbnb/epoxy/wiki/Avoiding-Memory-Leaks了解更多 信息。 在com.airbnb.epoxy.EpoxyController $ 3.run(EpoxyController.java:690) 在android.os.Handler.handleCallback(Handler.java:790) 在android.os.Handler.dispatchMessage(Handler.java:99) 在android.os.Looper.loop(Looper.java:164) 在android.app.ActivityThread.main(ActivityThread.java:6494) 在java.lang.reflect.Method.invoke(本机方法) 在com.android.internal.os.RuntimeInit $ MethodAndArgsCaller.run(RuntimeInit.java:438) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)