关于图片瀑布流的顶部滑动问题

场景:在使用RecyclerView实现图片瀑布流时,由于图片过多,不可能一次加载完成,故采用:每次加载固定数量图片,上拉加载更多图片的方法。但当加载出新的一批图片时,回到顶部,图片出现错位、滑动

问题原因:RecyclerVeiw加载更多图片时,使用了notifyDataSetChanged();,此函数会刷新整个布局,为新的图片进行排版,导致上方图片的不规则宽高信息丢失,当回到顶部时,可能会留有空白,RecyclerView会自动调整图片位置,导致图片跳动问题。

解决办法:在加载新的一批图片时使用notifyItemInserted(position);(position为现有item最后一条),此方法会将新的一批图片拼接到参数position的位置,顶部图片位置信息没有刷新,故顶部不会出现空白,也就不会跳动。

猜你喜欢

转载自blog.csdn.net/qq7915/article/details/82657009