gpt4 book ai didi

android - 如何在 Android 中返回上一个 Activity 时保存 ListView 位置

转载 作者:行者123 更新时间:2023-12-02 14:21:15 24 4
gpt4 key购买 nike

我有一个包含大量数据的ListView。但是当我转到ListView项目上的下一页时单击并返回到ListView。 我希望列表滚动到之前的位置。有人可以帮助实现这一目标吗?

我尝试了这段代码。列表滚动到同一点,但立即到达第一个位置。

private void populateList() {
descArray.clear();
List<All_Post> allDesc = dbhelper.getAllDescriptions();
for (All_Post all_Post : allDesc)
{
descArray.add(all_Post);
}

if (adapter == null)
{
adapter = new AllPostAdapter(this, R.layout.allpostlist, descArray);
listView.setAdapter(adapter);
}
else if (adapter != null) {


adapter.notifyDataSetChanged();
adapter = new AllPostAdapter(this, R.layout.allpostlist, descArray);
listView.setAdapter(adapter);
//int firstPosition = listView.getFirstVisiblePosition();
//listView.setSelection(firstPosition);

int index = listView.getFirstVisiblePosition();
View v = listView.getChildAt(0);
int top = (v == null) ? 0 : (v.getTop() - listView.getPaddingTop());
listView.setSelectionFromTop(index, top);
}
}

最佳答案

这是listview的默认属性。

如果您在 ListView 项目单击上移动到下一页并返回到 ListView,它将显示相同的位置

请记住一件事,您不应该在 backpressed() 上或返回 ListView 或使用任何其他方式返回 ListView 时刷新 ListView .

关于android - 如何在 Android 中返回上一个 Activity 时保存 ListView 位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34647715/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com