gpt4 book ai didi

java - 关于ListActivity、游标和SQL数据更新的问题

转载 作者:行者123 更新时间:2023-12-02 07:51:38 24 4
gpt4 key购买 nike

目前我正在使用ListActivity。我使用游标从SQL中获取数据,并根据SQL查询结果构建ListView。对于 ListView 中的每个对象,如果我按下该对象(onListItemClick),它将更改光标将读取的 SQL 中的值,并打开一个新 Intent 。(按下不同的对象将更改 SQL 表中的不同值) 。为了使我的 ListView 保持最新状态,我使用

//adapter is the SimpleCursorAdapter I use
protected void onListItemClick(ListView l, View view, int position, long id) {
super.onListItemClick(l, view, position, id);
//change the data in sql
...
//change the data end
adapter.changeCursor(dbAdapter.getResult(id));
adapter.notifyDataSetChanged();
//create intent here
//startActivity(intent)
}

问题是,如果我一直按同一个对象,保留它创建的 Intent ,它就可以正常工作。但是,一旦我在离开之前的 Intent 后按下另一个对象,我的 ListView 就会变成空的。例如,如果我按下对象a,我输入 Intent a,然后我离开 Intent a,回到 ListView (ListView现在很好),然后我按下对象b,我输入 Intent b。当我离开 Intent b 时,ListView 变为空。有人对这个问题有任何想法吗?谢谢。

最佳答案

听起来您的一些数据正在被破坏。我认为,如果您将列表创建代码移至 onResume,您的问题将会自行解决,因为每次返回时都会重新生成列表,而在 onCreate 中,它仅在首次创建 Activity 时完成。

一图胜千言: Activity Lifecycle

关于java - 关于ListActivity、游标和SQL数据更新的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10159183/

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