很长一段时间以来,我一直试图在recyclerview中使用firebase进行分页。可能这是解决方案。这里我有方法displayAllUserPost();它们先在onCreate中运行,然后在recyclerview的底部运行。这是代码。
private int INITIAL=2;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);displayAllUserStory();
//Initialize RecyclerView as postList//
displayAllUserPost();
postList.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
if (!recyclerView.canScrollVertically(1)) {
Toast.makeText(MainActivity.this, "Last", Toast.LENGTH_LONG).show();
INITIAL=INITIAL+1;
displayAllUserPost();
}
}
});
private void displayAllUserPost()
{
Query sortPost=PostRef.limitToLast(INITIAL).orderByChild("counter");
FirebaseRecyclerOptions<Post> options=new FirebaseRecyclerOptions.Builder<Post>().setQuery(sortPost,Post.class).build();
FirebaseRecyclerAdapter<Post, PostsViewHolder> firebaseRecyclerAdapter=new FirebaseRecyclerAdapter<Post, PostsViewHolder>(options)
{
*//methods implementation//*
}
postList.setAdapter(firebaseRecyclerAdapter);
firebaseRecyclerAdapter.startListening();
}
但是问题是我如何在当前可见项目上设置recyclerview位置?其自动滚动到第一位置。