Android Studio第12课——Activity生命周期及Task栈

1、Activity生命周期的起个函数

Android Studio第12课——Activity生命周期及Task栈

                                                Activity生命周期图

protected void onCreate();
当Activity第一次创建的时候会调用此方法

此方法会调用所使用的布局文件、静态变量、绑定监听器等等

protected void onStart();
当Activity能被看到的时候系统会调用此方法

protected void onRestart();
Activity已经创建但没有被销毁、重新进入的Activity会调用此方法

protected void onResume();
当Activity能够获得用户焦点的时候会被调用
所谓的用户焦点指的是用户对Activity进行操作的时候

protected void onPause();
当此Activity要跳转到另一个Activity并在启动另一个Activity之前会调用此方法

protected void onStop();
当Activity用户不可见的时候会调用此方法,如果新的Activity没有完全遮挡住

protected void onDestroy();
1、代码明确表明了finish方法会调用此方法
2、安卓系统资源不够用的时候会调用此方法

启动一个新的Activity会依次调用onCreate、onStart、onResume方法。

2、Task的基本概念
在Android里面task是一个存放Activity的一个栈,遵循后进先出的原则,分有压栈和盘栈两个操作


3、Activity和Task之间的关系
Activity都会作为元素存放在Task里面,遵循后进先出。没运行一个Activity都会将此Activity压栈,从第一个运行Activity中跳转到第二个Activity,第二个Activity会压栈到第一个Activity的顶部,然后把运行在第二个Activity。第三个、第四个等依次类推。如果在跳转Activity之前当前的Activity没有执行finish()方法,此Activity就不会在Task中被销毁。


4、对话框风格Activity的使用方法
对话框风格的Activity可以在Manifest配置文件中修改,在需要设置成对话框的Activity中加一条
android:theme = "@android:style/Theme.Dialog"指定一下就OK。这种对话框形式是在开发中经常见的。


By Urien 2018年6月12日 21:57:44