Android RecyclerView : on item, 插入向上推而不是向下推

标签 android android-recyclerview

假设我有一个包含大量项目 View 的 RecyclerView:[a, b, c, d, e, ...]。如果我想在 bc 之间插入一个新的 ItemView X,我更新我的基础集合并调用 notifyItemInserted(2)。我现在有 [a, b, X, c, d, e, ...]

我的问题是,当 X 出现时,它会将 自身之后的每个 View 都向下推(将 e 推出屏幕),我需要它会在 自身之前插入每个 View (将 a 推出屏幕)。

有办法吗?

最佳答案

发生这种情况是因为 LinearLayoutManager 将列表的开头视为 anchor 位置。如果你想让列表的末尾作为 anchor 位置,你可以设置stackFromEnd = true;。在这种情况下,当列表第一次加载时,您会看到;

V W X Y Z//假设字母表是您的项目列表

这是对话应用程序之类的常见情况。

如果你想让它从头开始,而 stackFromEnd 设置为 true,那么你可以在适配器时调用 scrollToPosition(0)已初始化。

关于Android RecyclerView : on item, 插入向上推而不是向下推,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28072700/

相关文章:

android - Spinner 不换行 - 这是一个 Android 错误吗?

android - 找不到 JNI 方法

android - 在备忘录中列出原始传感器数据

java - 在RecyclerView-AndroidX中的项目之间添加不同的布局

android - RecyclerView 在到达滚动末尾时识别

android - 如何在没有更多上下文可用时发送 Toast 或任何用户通知?

java - android list add 没有添加 hashmap

java - 使用 Fragment 中的按钮在 recyclerview 内发送数据

java - E/RecyclerView : No adapter attached; skipping layout. 尽管正在初始化适配器

android - 使用 RecyclerView 时如何让 cardView 适配屏幕?