【发布时间】:2018-01-24 14:38:09
【问题描述】:
我正在尝试制作一个聊天应用程序,当用户滚动到顶部时,服务器现在只获取并显示 15 条消息用户滚动到底部而不是顶部,如果用户滚动到顶部,我如何获得相同的功能
public UserAdapter(RecyclerView recyclerView, Activity activity, ArrayList<User> arrayList) {
this.activity = activity;
this.arrayList = arrayList;
final LinearLayoutManager linearLayoutManager = (LinearLayoutManager) recyclerView.getLayoutManager();
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
totalItemCount = linearLayoutManager.getItemCount();
lastItemCount = linearLayoutManager.findLastVisibleItemPosition();
Log.d(TAG, "onScrolled: " + lastItemCount + " " + totalItemCount);
if (!isLoading && totalItemCount <= (lastItemCount + visibleThreshold)) {
if (iLoadMore != null) {
iLoadMore.onLoadMore();
isLoading = true;
}
}
}
});
}
我的主要活动
adapter.setUnLoaded();
adapter.setiLoadMore(new ILoadMore() {
@Override
public void onLoadMore() {
arrayList.add(null);//for the progressbar
adapter.notifyItemInserted(arrayList.size() - 1);
Log.d("LOADMORE", "onLoadMore: scrolling working");
BackgroundTask backgroundTask1 = new BackgroundTask(getApplicationContext());
backgroundTask1.delegate = (BackgroundTask.AsynResponse) context;
backgroundTask1.execute("getuser");
}
});
【问题讨论】:
-
尝试反转您的 recylerview 加载数据stackoverflow.com/questions/29474876/…
-
谢谢,当我在我的适配器中写入 linearLayoutManager.setReverseLayout(true);它对我有用,我得到了我想要的功能,谢谢
标签: android arraylist scroll android-asynctask android-recyclerview