Android的Activities相关状态及知识
上述是Activities整个生存过程图片,我们学习Android时最多使用的就是
@override
protected void onCreate(Bundle savedInstanceState){}
其实相对onCreate()我们还经常需要使用到其他几个状态的函数来保存我们App的状态,如:
- @Override
- protected void onStart() {
- super.onStart();
- Log.d(msg, "The onStart() event");
- }
- /** Called when the activity has become visible */
- @Override
- protected void onResume() {
- super.onResume();
- Log.d(msg, "The onResume() event");
- }
- /** Called when another activity is taking focus. */
- @Override
- protected void onPause() {
- super.onPause();
- Log.d(msg, "The onPause() event");
- }
- /** Called when the activity is no longer visible */
- @Override
- protected void onStop() {
- super.onStop();
- Log.d(msg, "The onStop() event");
- }
- @Override
- protected void onRestart() {
- super.onRestart();
- Log.d(msg, "The onRestart() event");
- }
- /** Called just before the activity is destroyed. */
- @Override
- protected void onDestroy() {
- super.onDestroy();
- Log.d(msg, "The onDestroy() event");
- }
在onCreate()里面传递的一个对象savedInstanceState,它其实就是一个用以保存当前Activities状态的状态信息。
在activity的生命周期中,只要离开了可见阶段,或者说失去了焦点,activity就很可能被进程终止了!,被KILL掉了,这时候,就需要有种机制,能保存当时的状态,这就是savedInstanceState的作用。用来保存状态信息的Bundle会同时传给两个method,即onRestoreInstanceState() and onCreate()。
善于使用savedInstanceState和各种状态,就不需要像windows程序那样,经常要使用确定按钮了,简化了App操作。