无限轮播ViewPager在RecyclerView中上下滑动时卡顿

问题描述:
1.有一个无限轮播的ViewPager 作为RecyclerView 的一个itemView
2.RecyclerView在上下滑动时,即将显示ViewPager时会出现卡顿,然后突然显示出来
3.初步断定 ViewPager, 即将显示出来时 getView 方法的调用 所产生的耗时较大,但是产生的布局并不是极其复杂
3.将viewpager滑动出屏幕,再滑动回来时,不论是自动轮播还是手动滑viewpager中的item,都回出现一次快速跳动的奇怪现象

PS:
图片描述

更新viewpager数据时:

public void updateYourViewPager(List<String> theLatestData) {
    if (null == mYourViewPager) {
        //do sth
    }
    if (mYourViewPager.getAdapter() instanceof YourViewPagerAdapter) {
        ((YourViewPagerAdapter)  mYourViewPager.getAdapter()).update(theLatestData);
    }
}


参考:http://blog.csdn.net/yjs1129580545/article/details/52460443

请问,该如何优化(是否有 viewpager相关复用机制或其他方法),解决卡顿问题呢?

阅读 4.7k
1 个回答

图片描述

更新viewpager数据时:

public void updateYourViewPager(List<String> theLatestData) {
    if (null == mYourViewPager) {
        //do sth
    }
    if (mYourViewPager.getAdapter() instanceof YourViewPagerAdapter) {
        ((YourViewPagerAdapter)  mYourViewPager.getAdapter()).update(theLatestData);
    }
}


参考:http://blog.csdn.net/yjs1129580545/article/details/52460443
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题