Closed. This question needs details or clarity。它当前不接受答案。
想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
在16天前关闭。
我有一个带有Firebase数据库的RecyclerView
当我单击该项目时,应该显示一个底部工作表对话框
当底部对话框显示回收商回到位置0时
这是适配器的底页调用
这是底部工作表加载数据代码
注意:最下面的表格还会从Firebase加载数据
现在,您设置要滚动到的位置。如果要滚动到顶部,请在此处设置0。
并将新创建的平滑滚动器传递给
想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
在16天前关闭。
我有一个带有Firebase数据库的RecyclerView
当我单击该项目时,应该显示一个底部工作表对话框
当底部对话框显示回收商回到位置0时
这是适配器的底页调用
holder.comment.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
CommentBottomSheetDialog dialog=new CommentBottomSheetDialog(context,user,items.get(position));
dialog.show(fragmentManager,dialog.getTag());
}
});
这是底部工作表加载数据代码
private void loadList() {
ref.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if (dataSnapshot.hasChildren()){
list=new ArrayList<>();
for (DataSnapshot d:dataSnapshot.getChildren()) {
Comments comments=d.getValue(Comments.class);
list.add(comments);
}
CommentsAdapter adapter=new CommentsAdapter(context,list);
rec.setAdapter(adapter);
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}
注意:最下面的表格还会从Firebase加载数据
最佳答案
只需使用首选项SNAP_TO_START创建SmoothScroller:
RecyclerView.SmoothScroller smoothScroller = new LinearSmoothScroller(context) {
@Override protected int getVerticalSnapPreference() {
return LinearSmoothScroller.SNAP_TO_START;
}
};
现在,您设置要滚动到的位置。如果要滚动到顶部,请在此处设置0。
smoothScroller.setTargetPosition(position);
并将新创建的平滑滚动器传递给
LayoutManager
layoutManager.startSmoothScroll(smoothScroller);
08-03 19:01