Android四大组件一----Activity

最新面试需要复习一下Android基础。

{所谓Activity}

通俗点:app上看到的窗口基本都是Activity

  Android 程序一般是由多个Activity组成,用户看到的能够交互的窗口通常是Activity,多个Activity交互形成一个应用程序。从luncher上启动程序通常进入"Mian" Activity(在AndroidManifest.xml配置intent-filter),用户为了执行不同的动作而启动另外一个Activity,每一次一个Activity启动,前一个Activity就停止了,但是ActivityManager保存Activity在一个栈中。新的Activity启动,它将推到栈顶,用户按back按钮它被弹出栈,栈顶的Activity将恢复。

当一个Activity因新的Activity启动而停止,新旧的Activity将被通知各种状态转变的通知具体可以在Activity的生命周期回调函数体现,如create,stop,resume,destory等,开发者可以根据这些回调函数添加适当的逻辑代码。

{Activity生死}

 

搬个google的activity周期。

1. Activity从onCreate()生到onDestory()死.

2. Activity 从onStart() ---> onStop() 在屏幕上可见。

3. Activity 从onResume() ---> onPause()  处于前台,可与用户交互

 程序打开:

{Activity各周期适合做什么事情}

1. onCreate()

一个Activity实例生成只会执行一次,所以可以在onCreate里面初始化一些相对不太会变化的变量。比如获取控件实例一般都是直接在onCreate中 findViewById

2. onStart()

不大常用,一般broadcastrecevier 中 会用到 registerBroadcast

3. onStop() 

与onStart()一对,也不常用,在有receiver时一般使用它unregister

4. onResume()

很常用,一些程序变量需要在onResume中重新获取最新的数据进行刷新操作

5. onPause()

不常使用

6. onDestory()

常用。 清空activity的一些数据,如Cursor的关闭,一些task的结束,及其他占资源需手动停的代码在这个方法里面有机会停止。

原文地址:https://www.cnblogs.com/pandans/p/4049118.html