zoukankan      html  css  js  c++  java
  • Android应用程序中Activity的生命周期

    Android应用程序中Activity的生命周期


    对于Android来说Activity的生命周期是非常的重要,尤其是对于新学者来说,只有充分了解了Activity的生命周期,才能写出优良用户体验的应用

    下面来看看具体的Activity生命周期
    图1是官方给我们提供的Activity生命周期图:

                                                                                        图1

    大家大概了解了Activity的生命周期后,请看下面的代码
    public class MainActivity extends Activity {
    
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.activity_main);
    		Log.i("MY_LOG", "---onCreate");
    	}
    	
    	@Override
    	protected void onStart() {
    		// TODO Auto-generated method stub
    		super.onStart();
    		Log.i("MY_LOG", "---onStart");
    	}
    	
    	@Override
    	protected void onRestoreInstanceState(Bundle savedInstanceState) {
    		// TODO Auto-generated method stub
    		super.onRestoreInstanceState(savedInstanceState);
    		Log.i("MY_LOG", "---onRestoreInstanceState");
    	}
    	
    	@Override
    	protected void onRestart() {
    		// TODO Auto-generated method stub
    		super.onRestart();
    		Log.i("MY_LOG", "---onRestart");
    	}
    	
    	@Override
    	protected void onSaveInstanceState(Bundle outState) {
    		// TODO Auto-generated method stub
    		super.onSaveInstanceState(outState);
    		Log.i("MY_LOG", "---onSaveInstanceState");
    	}
    	
    	@Override
    	protected void onResume() {
    		// TODO Auto-generated method stub
    		super.onResume();
    		Log.i("MY_LOG", "---onResume");
    	}
    	
    	@Override
    	protected void onPause() {
    		// TODO Auto-generated method stub
    		super.onPause();
    		Log.i("MY_LOG", "---onPause");
    	}
    	
    	@Override
    	protected void onStop() {
    		// TODO Auto-generated method stub
    		super.onStop();
    		Log.i("MY_LOG", "---onStop");
    	}
    	
    	@Override
    	protected void onDestroy() {
    		// TODO Auto-generated method stub
    		super.onDestroy();
    		Log.i("MY_LOG", "---onDestroy");
    	}
    
    }
    
    此段代码列出了Activity的各个生命周期所要执行的方法,现在对这些方进行验证。

    当第一次启动应用程序时,打印出的LOG如下图:



    当按下返回键时,打印出的LOG如下图:



    当再次打开应用程序时,打印出的LOG如下图:



    当按下home键时,打印出的LOG如下图:



    当第3次打开应用时,打印出的LOG如下图:



    当默认状态下循环旋转屏幕时,打印出的LOG如下图:


    当在Activity中配置了 android:configChanges ="orientation|screenSize"时,打印出的LOG如下图:


    注:退出Activity保存数据时要在onPause()方法中。因为onStop(),方法中有可能Activity会销毁
  • 相关阅读:
    题解-CmdOI2019 口头禅
    题解-NOI2003 智破连环阵
    题解-CF1282E The Cake Is a Lie
    CF1288F Red-Blue Graph
    题解-洛谷P4229 某位歌姬的故事
    莫比乌斯反演
    [HNOI2008]越狱(bzoj1008)(组合数学+正难则反)
    [FJOI2007]轮状病毒(bzoj1002)(递推+高精度)
    矩阵快速幂
    高斯消元
  • 原文地址:https://www.cnblogs.com/suncoolcat/p/3301614.html
Copyright © 2011-2022 走看看