Android 更新RecyclerView的好方法
一般在使用RecyclerView的时候不免要修改RecyclerView的数据,使用notifyDataSetChanged()来刷新界面,但是当数据比较多,而只是修改了一点的数据,或者刷新比较频繁,这样就会导致界面的卡顿问题,用户交互特别不好。
这个时候就需要只是修改需要修改的数据,不要将数据全部进行更新,这样就可以解决问题。
局部更新的代码如下:
privateintposition;//当前recyclerview的position
@BindView(R.id.speak_valuate_recycler_view)
RecyclerViewrecyclerView;
privateLinearLayoutManagermRecyclerViewLayoutManager;
mRecyclerViewLayoutManager=newLinearLayoutManager(this);
mRecyclerViewLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
recyclerView.setLayoutManager(mRecyclerViewLayoutManager);
privatevoidchangVolume(finalintvolume){
intfirst=mRecyclerViewLayoutManager.findFirstVisibleItemPosition();
intlast=mRecyclerViewLayoutManager.findLastVisibleItemPosition();
if(position>=first&&position<=last){
Viewview=recyclerView.getChildAt(position-first);
if(recyclerView.getChildViewHolder(view)instanceofSpeakContentAdapter.SpeakContentHolder){
//修改数据
ProgressImageViewprogressImageView=(ProgressImageView)view.findViewById(R.id.speak_item_record);
progressImageView.setProgress(volume);
}
}
}
以上所述是小编给大家介绍的Android更新RecyclerView的好方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!