android - 将 RecyclerView 与 FirestoreRecyclerAdapter 一起使用时如何设置滚动位置?

标签 android firebase android-recyclerview uiscrollview google-cloud-firestore

我正在使用 RecyclerView 来显示来自 Firestore 数据库的一些数据。出于显而易见的原因,我将 FirestoreRecyclerAdapter 用作适配器。我在我的 RecyclerView 中成功显示了所有 35 个项目。问题是,我无法滚动到特定位置。这是我尝试过的:

recyclerView = locationsFragmentView.findViewById(R.id.recycler_view);
recyclerView.setLayoutManager(new LinearLayoutManager(context));

FirestoreRecyclerOptions<MyModelClass> options = new FirestoreRecyclerOptions.Builder<MyModelClass>().setQuery(query, MyModelClass.class).build();
adapter = new MyFirestoreRecyclerAdapter(options);
recyclerView.setAdapter(adapter);
recyclerView.setHasFixedSize(false);
recyclerView.getLayoutManager().scrollToPosition(10);

每次我打开我的应用程序时,我总是定位在第一个位置,而不是我在 scrollToPosition() 方法中指定的第 10 个位置。

我也用过:

recyclerView.scrollToPosition(10);

recyclerView.smoothScrollToPosition(10);

但运气不好。如何滚动到特定位置?谢谢!

最佳答案

recyclerView 不会滚动,因为当您调用 recyclerView.scrollToPosition(10); 时它仍然是空的,您应该将该代码移到 recyclerView< 之后Firebase 响应中填充,可能在回调中。

关于android - 将 RecyclerView 与 FirestoreRecyclerAdapter 一起使用时如何设置滚动位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51265523/

相关文章:

android - 如何在相对布局中的 ImageView 上方添加水平 1px 线?

android - Firebase OrderByChild() 和 EqualTo() 无法正常工作

javascript - setState() 导致 props 未定义

android-OnClickListener 不适用于回收适配器内的 View

android - 嵌套的 RecyclerView 不回收

java - 添加到Android Studio中的列表,性能问题

android - 为什么当应用程序被杀死时 AlarmManager 广播会被取消?

android - 无法在 SQLite 数据库中创建表和列

android - 如何减少 Android 中 RecyclerView 项目之间的空间?

javascript - firebase如何在firebase-util上查询