ViewPager内的EpoxyRecyclerView

时间:2018-09-04 02:09:01

标签: android epoxy

在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)

0 个答案:

没有答案