我已经实现了自定义listview.Now用户从另一个活动刷新应用程序,导致数据库更新。所以,现在用户返回到具有自定义listview的活动。现在问题是列表视图未更新为了解决这个问题,我在我的活动中调用onresate oncreate,其中包含与之关联的自定义列表视图。 但这样做会导致listview中的项目自身复制(意味着它会增加项目数量并为每次刷新调用重复自身)。 请帮忙!
答案 0 :(得分:4)
http://developer.android.com/training/basics/activity-lifecycle/starting.html
当活动开始时,onCreate(),onStart(),onResume()方法将按顺序逐个调用,如果在onResume()中调用onCreate(),则表示您将填充列表两次。 / p>
你可以创建一个像fillList()这样的方法并仅在onResume()状态下调用它,这样,每当你的活动恢复或创建时,都会调用这个方法,但要确保这个操作不重。根据android,活动开始对用户onStart()可见,但在onResume()之后用户可以进行交互。
答案 1 :(得分:2)
作为对标题的回答,您绝不应在onCreate()
中致电onResume()
,因为仅凭onResume()
方法无法做任何事情。
启动应用后,不仅会调用onCreate()
,还会调用onResume()
。因此,当应用程序启动或再次进入onResume()
方法时,移动您必须调用的任何代码通常是最好的主意。
如果这个答案不够,我们需要有关您确切代码的更多信息。