显示"You must call removeView() on the child's parent first"错误的回收器适配器



我做了一个recyclerview适配器,在其中我在recyclerview中显示了很多东西。而且我还在使用ViewPager的视图中显示了一些图像。它的工作正常,但是当我添加viewPagerarrowIndicator库以供ViewPager指示器显示上述错误,当时我从底部滚动回到底部。我尝试过使用StackoverFlow的解决方案,但是没有类似的错误或解决方案

logcat:

Process: com.systechdigital.webadeal, PID: 30287
                  java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
                      at android.view.ViewGroup.addViewInner(ViewGroup.java:4659)
                      at android.view.ViewGroup.addView(ViewGroup.java:4495)
                      at android.view.ViewGroup.addView(ViewGroup.java:4436)
                      at android.view.ViewGroup.addView(ViewGroup.java:4409)
                      at com.sembozdemir.viewpagerarrowindicator.library.ViewPagerArrowIndicator.arrange(ViewPagerArrowIndicator.java:107)
                      at com.sembozdemir.viewpagerarrowindicator.library.ViewPagerArrowIndicator.bind(ViewPagerArrowIndicator.java:82)
                      at com.systechdigital.webadeal.NewsFeedAdapter.onBindViewHolder(NewsFeedAdapter.java:197)
                      at com.systechdigital.webadeal.NewsFeedAdapter.onBindViewHolder(NewsFeedAdapter.java:38)
                      at android.support.v7.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:6310)
                      at android.support.v7.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:6343)
                      at android.support.v7.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline(RecyclerView.java:5289)
                      at android.support.v7.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:5552)
                      at android.support.v7.widget.GapWorker.prefetchPositionWithDeadline(GapWorker.java:270)
                      at android.support.v7.widget.GapWorker.flushTaskWithDeadline(GapWorker.java:324)
                      at android.support.v7.widget.GapWorker.flushTasksWithDeadline(GapWorker.java:337)
                      at android.support.v7.widget.GapWorker.prefetch(GapWorker.java:344)
                      at android.support.v7.widget.GapWorker.run(GapWorker.java:370)
                      at android.os.Handler.handleCallback(Handler.java:739)
                      at android.os.Handler.dispatchMessage(Handler.java:95)
                      at android.os.Looper.loop(Looper.java:148)
                      at android.app.ActivityThread.main(ActivityThread.java:7325)
                      at java.lang.reflect.Method.invoke(Native Method)
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

我的适配器代码:

        //image slider
        if(newsFeedClassArrayList.get(position).getImageList()!=null){
            holder.viewPager.setVisibility(View.VISIBLE);
            viewPagerAdapter=new ViewPagerAdapter(context,newsFeedClassArrayList.get(position).getImageList());
            holder.viewPager.setAdapter(viewPagerAdapter);

**//error showing below on line**
            holder.viewPagerArrowIndicator.bind(holder.viewPager);
            holder.viewPagerArrowIndicator.setArrowIndicatorRes(R.drawable.arrow_left_black_24dp,R.drawable.arrow_right_black_24dp);
            viewPagerAdapter.notifyDataSetChanged();
        }else {
            holder.viewPager.setVisibility(View.GONE);
        }
        holder.timeStampTvId.setText(newsFeedClass.getTimeStamp());

XML代码:

<com.sembozdemir.viewpagerarrowindicator.library.ViewPagerArrowIndicator
        android:id="@+id/viewPagerArrowIndicator"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
    <android.support.v4.view.ViewPager
        android:layout_width="wrap_content"
        android:layout_height="180dp"
        android:id="@+id/viewPagerId_imageView"
        android:minHeight="0dp"
        >
    </android.support.v4.view.ViewPager>
    </com.sembozdemir.viewpagerarrowindicator.library.ViewPagerArrowIndicator>

尝试使用另一个库,即使您不想将其用于测试。

也许您可以尝试 - https://github.com/ongakuer/circleindicator

相关内容

最新更新