我正在将适配器移植到recyclerview.adapter
中
我想实现的:当用户向下滚动到我想要开始取数据的末尾附近时,我还想在末尾添加i ProgressBar视图,让用户知道更多的数据即将到来。
我在BaseAdapter中实现这一点的方式是:在GetView
上,在接近结尾时请求的视图中,我将开始获取更多数据,调用notifyDataSetChanged(以获得要显示的ProgressBar视图),然后才返回GetView
所需的视图。
我在RecyclerView.Adapter中尝试做的事情:我基本上尝试做同样的事情,这次是在OnBindViewWholder
方法中,
但如果尝试在此方法内部调用NotifyItemInserted
,则会出现以下异常:
IllegalStateException: Cannot call this method while RecyclerView is computing a layout or scrolling
我尝试的内容:我注意到OnBindViewHolder
从LayoutChildres
从LayoutManager
调用,我尝试重写它,并在它的Super
之后调用NotifyItemInserted
,但我得到了同样的异常
我怎样才能达到我的目标?
Handler handler = new Handler();
final Runnable r = new Runnable() {
public void run() {
adapter.notifyDataSetChanged();
}
};
handler.post(r);
调用Adapter.NotifyDataSetChanged()的示例代码;自活动