在我的应用程序中,我必须检查用户是否到达了recyclerView列表的底部或顶部。我创建了特殊的界面:
public interface OnBottomReachedListener {
void onBottomReached(int position);
}
然后将一种方法插入适配器:
void setOnBottomReachedListener(OnBottomReachedListener onBottomReachedListener) {
this.onBottomReachedListener = onBottomReachedListener;
}
将这些行插入onBindViewHolder
:
if (position ==getItemCount() - 1) {
onBottomReachedListener.onBottomReached(position);
}
,通常它可以正常工作,但是我不明白如何使用以下方法检查到达列表的顶部。也许有人有什么想法对我有帮助?
我在适配器上试过这样的东西:
if (position == 0) {
//onTopReachedListener.onTopReached(position);
Log.w("MY_TAG", String.valueOf(position));
}
但它引发了一个异常:
java.lang.NullPointerException: Attempt to invoke interface method 'void com.example.developer_4.test_login.MessageCenter.OnTopReachedListener.onTopReached(int)' on a null object reference