Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/189.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 让RecyclerView在我向适配器添加项目时停止滚动_Android_Android Recyclerview - Fatal编程技术网

Android 让RecyclerView在我向适配器添加项目时停止滚动

Android 让RecyclerView在我向适配器添加项目时停止滚动,android,android-recyclerview,Android,Android Recyclerview,当我添加项目时,如何阻止RecyclerView滚动到列表底部 即使在列表顶部插入内容并调用notifyDataSetChanged或notifyItemInserted时,列表也会滚动到底部 与预期一样有效的一个功能是notifyItemRemoved(index)我想我调用的是整个列表的notifyRangeInserted(),滚动到该范围的末尾 如果您有类似的问题,只需将适配器功能削减到其基本功能,并从那里开始构建。问题是我在列表中有一个项目,一个ProgressBar指示数据正在加载,

当我添加项目时,如何阻止RecyclerView滚动到列表底部

即使在列表顶部插入内容并调用
notifyDataSetChanged
notifyItemInserted
时,列表也会滚动到底部


与预期一样有效的一个功能是
notifyItemRemoved(index)

我想我调用的是整个列表的
notifyRangeInserted()
,滚动到该范围的末尾


如果您有类似的问题,只需将适配器功能削减到其基本功能,并从那里开始构建。

问题是我在列表中有一个项目,一个
ProgressBar
指示数据正在加载,但当加载新项目时,我将它们添加到列表中,这移动了“焦点项目”
ProgressBar
向下滚动,如果有足够的项目将其移出屏幕,则
RecyclerView
将向下滚动以保持其在屏幕上。问题是1。我不想让它保持“专注”和2。接下来我做的就是从适配器中删除
ProgressBar

因此,解决方案是在
适配器

中的较早位置添加项之前,先删除
进度条
或其他项,然后使用Recycleview的stopScroll()方法