我一直想知道onStart()函数在android生命周期中的确切作用。网上的大部分资源只是说 - 它就在您的活动在屏幕上显示之前调用。
但到目前为止我所做的应用程序我从未使用过onStart()。我在onCreate()本身做了所有的初始化。
android生命周期中的所有其他状态都有一些或其他意义,但onStart()的作用不是很清楚。
在onStart()中是否有任何特定的事情要做? onStart()在生命周期中确实是必需的,因为所有初始化都可以在onCreate()中完成,并且在活动变得可见之前也会调用它。
任何人都可以帮助我清楚地了解onStart()。 在此先感谢:)
答案 0 :(得分:6)
onStart()
。例如,如果您有活动A并从中启动活动B,则活动A将暂停(onPause()
)然后停止(onStop()
)并移至后台堆栈。在此之后,如果您按回到活动B,B将暂停(onPause()
),停止(onStop()
)并销毁(onDestroy()
),活动A将从后面恢复堆栈,已启动(onStart()
)并已恢复(onResume()
)。如您所见,系统不会再次为onCreate()
调用A.
如何使用onStart()
?例如,您应该在onStop()
中取消注册GPS,传感器等的侦听器,然后再次在onStart()
中注册。如果您在onCreate()
注册并在onDestroy()
取消注册,那么GPS服务将始终有效并且会耗尽电量。
答案 1 :(得分:0)
当活动对用户可见时调用。
如果活动到达前台,则按onResume(),如果隐藏,则按onStop()。
更多: http://developer.android.com/reference/android/app/Activity.html
答案 2 :(得分:0)
如果我想用户onStart,我个人会做什么,我将在onStart方法中分配我的听众(OnclickListener,...等)。
我认为真的没用,因为你可以在onCreate中做你想做的每件事。
希望有所帮助