onCreate和onStart循环之间有什么区别? 我混淆了为这些周期输入正确的代码。 例如,在我的情况下,我有主要活动listview来显示数据库和其他活动的数据,以创建数据到数据库。 listactivity调用创建数据的活动。创建数据成功后,它将返回listactivity。并且应该更新listview中的数据。
当我在onCreate方法上放置初始化数据库,游标和适配器时,listActivity在创建数据后不会更新最新数据。 但如果我把它放在onStart方法上,它就会更新。
我的问题:在这种情况下,将所有初始化放在OnStart方法上是否正确? 因为我认为如果有一个更新的数据,将每个数据库记录重新初始化为listview会很昂贵。
答案 0 :(得分:2)
首次创建活动时会调用onCreate和onStart循环之间有什么区别?
onCreate()
。只要活动变得可见,就会调用onStart()
,其中包括首次创建活动时(onCreate()
之后)以及停止返回屏幕后(例如,另一项活动占用屏幕)
我有主要活动listview来显示来自数据库和其他活动的数据以创建数据到数据库。 listactivity调用创建数据的活动。创建数据成功后,它将返回listactivity。列表视图中的数据应该更新。
使用托管Cursor
,这将自动发生。请参阅startManagingCursor()
上的Activity
。
答案 1 :(得分:0)
这取决于。您是否希望每次用户返回可见活动时重新加载数据?如果是,您应该在onStart()中添加这些方法。如果您希望在最开始时加载值(更像是一次性工作)并且不想重新加载,那么onCreate是正确的位置。
请参阅doco以获取有关onCreate和onStart的说明。链接中的此图表很有用 http://developer.android.com/guide/topics/fundamentals.html#actlife