Android 循环视图滚动位置

Android 循环视图滚动位置,android,mysql,Android,Mysql,我有一个RecyclerView,其中包括来自RESTAPI的20项。当我向数据库添加一个新项目时,列表中的第一个项目将消失,新项目将使用mysqlLIMIT 0,20添加到列表的末尾 我希望当我在列表中并添加了新项目时,滚动位置不会改变,因此我在适配器前面使用了onsaveInstanceState,在适配器后面使用了onRestoreInstanceState。但正如你所理解的,新列表与旧列表有一个区别,这就是项目的位置。因此,列表会从其状态再滚动一个项目 如何防止这种情况发生,或者是否有其

我有一个RecyclerView,其中包括来自RESTAPI的20项。当我向数据库添加一个新项目时,列表中的第一个项目将消失,新项目将使用mysql
LIMIT 0,20添加到列表的末尾

我希望当我在列表中并添加了新项目时,滚动位置不会改变,因此我在适配器前面使用了
onsaveInstanceState
,在适配器后面使用了
onRestoreInstanceState
。但正如你所理解的,新列表与旧列表有一个区别,这就是项目的位置。因此,列表会从其状态再滚动一个项目


如何防止这种情况发生,或者是否有其他解决方案?

如果您不希望在添加项目时更改滚动位置,请使用
notifyItemInserted()


如果您不希望在添加项目时更改滚动位置,请使用
notifyItemInserted()


我没有在android代码中动态添加项目,我只是在php代码中添加项目并删除最旧的项目,然后在android中更新整个列表。我没有在android代码中动态添加项目,我只是在php代码中添加项目并删除最旧的项目,然后在android中更新整个列表。
// adapter

void addNewItem(Item item) {
    itemList.add(item);
    notifyItemInserted(itemList.size() - 1);
}