1.什么是Activity:

简单的说:Activity就是布满整个窗口或者悬浮于其他窗口上的交互界面.在一个应用程序中通常由多个Activity构成,都会在Manifest.xml中指定一个主的Activity,

如下设置:

  <activity

  android:label="@string/app_name"

  android:name=".MainActivity">

    <intent-filter>

    <action android:name="android.intent.action.MAIN"/>

    <category

  android:name="android.intent.category.LAUNCHER"

      </intent-filter>

    </activity>

当程序第一次运行时用户就会看这个Activity,这个Activity可以通过启动其他的Activity进行相关操作.

当启动其他的Activity时,当前的这个Activity将会停止,新的Activity将会压入栈中,同时获取用户焦点,这时就可在这个Activity上操作了.

我们都知道栈是先进后出的原则,那么当用户按Back键时,当前的这个Activity销毁,前一个Activity重新恢复.

2.Activity生命周期:

Activity经历如下3个阶段:

开始Activity: 在这个阶段依次执行3个生命周期的方法,分别是onCreate,onStart, onResume方法.

Activity重新获得焦点: 如果Activity重新获得焦点,会依次执行3个生命周期,分别是onRestart, onStart和onResume.

关闭Activity: 当Activity被关闭时系统会依次执行3个生命周期方法,分别是: onPause, onStop和 onDestory.

从以上的Activity的生命周期不难看出,改图包含了两层循环,

第一层循环是: onPause->onResume->onPause

第二层循环是: onRestart->onStart->onResume->onPause->onStop

我们可以将这两层的循环看成整个Activity的生命周期的子生命周期

第一层循环称为焦点生命周期,第二层循环可以视为生命周期

也就是说,第一层循环在Activity焦点获得与失去的过程中循环,在这个过程中,Activity始终是可见的,第二层循环是Activity可见与不可见的过程中循环

这个过程中伴随着Activity焦点的获得与失去,也就是说,Activity首先会被显示,然后会获得焦点,接着失去焦点,最后弹出其他的Activity

  Activity具体的生命周期如下:

  整体的生命周期: onCreate->...->onDestory

  可视生命周期: onStart->...->onStop

  焦点生命周期: onResume->....->onPause

更多相关文章

  1. recycleView的item获取焦点
  2. Android(安卓)EditText 禁止软键盘弹出
  3. View类xml属性、方法
  4. Android(安卓)各类生命周期详解
  5. Android(安卓)响应System UI状态,焦点改变,手势处理
  6. Android中循环的几种方式
  7. Android入门篇一:Android(安卓)Activity生命周期
  8. 【Fragment】 Android(安卓)Fragment生命周期详解(图文)
  9. 取消自动获得焦点和弹出对话框

随机推荐

  1. Golang 是面向对象还是面向过程?
  2. golang吉祥物是啥?
  3. Golang 和 PHP 哪个性能更强?
  4. golang会代替java吗?
  5. Golang 底层也用 Golang 吗?
  6. golang和哪种语言像?
  7. golang和nodejs的区别是什么?
  8. golang如何连接mysql
  9. golang如何读取文件
  10. golang和go语言有区别吗?