在第一个位置插入的项目直到向上滚动时才可见

时间:2019-02-27 06:56:29

标签: android android-recyclerview recyclerview-layout

场景:

  • 我的适配器支持两种不同的视图类型:A和B
  • 向适配器通知100种A型物品-一切都正确呈现
  • 使用以下命令通知适配器有关B型插入的一项 notifyItemRangeInserted位于位置0-此项目“不可见” 默认情况下,要查看它,我必须手动向上滚动。

如何自动“看到” B型第一项?

2 个答案:

答案 0 :(得分:3)

您可以在通知B型项目后使用以下代码行:

yourRecyclerView.smoothScrollToPosition(0);

答案 1 :(得分:1)

使用https://stackoverflow.com/a/54899984/8144663只会解决您的问题。

您将需要在下一帧中调用smoothScrollToPosition(),

recyclerview.post(new Runnable() {
            @Override
            public void run() {
                 recycleview.smoothScrollToPosition(n);
            }
        });