zoukankan      html  css  js  c++  java
  • 《第一行代码》学习笔记9-活动Activity(7)

    1.发现Android中的活动是可以层叠的,每启动一个新的活动,就会覆盖在原活动之上,
    然后点击Back键会销毁最上面的活动,下面的一个活动就会重新显示出来。
    2.Android是使用任务来管理活动的。一个任务就是一组存放在栈里的活动的集合,该栈
    被称为返回栈(Back Stack)。栈是一种后进先出的的数据结构。
    3.默认情况下,每启动一个新活动,会在返回栈中入栈,处于栈顶->每按下Back键或
    调用finish()方法去销毁一个活动时,处于栈顶的活动会出栈->前一个入栈的活动就会
    重新处于栈顶的位置。系统总是会显示处于栈顶的活动给用户。
    4.活动状态:每个活动在其生命周期中最多有4种状态。
    (1)运行状态:活动位于返回栈的栈顶
    (2)暂停状态:活动不再处于栈顶,仍然可见。因为并不是每个活动都是占满整个屏幕
    的,比如对话框形式的活动只会占用屏幕中间的部分区域。处于暂停状态的活动完全存活。
    ##只有在内存极低的情况下,系统才会考虑回收这种活动。
    (3)停止状态:活动不再处于栈顶,且完全不可见。系统仍然会为这种活动保存相应的
    状态和成员变量。并不完全可靠,其他地方需要内存时,处于停止状态的活动有可能会被
    系统回收。
    (4)销毁状态:从返回栈中移除就变成销毁状态。系统最倾向于回收这种状态的活动,
    从而保证手机的内存充足。
    5.活动的生存期:Activity类中定义了七个回调方法,覆盖了活动生命周期的每一个环节。
    (1)onCreate():每个活动都重写这个方法,会在活动第一次被创建时被调用。在该方法
    中完成活动的初始化操作,如加载布局,绑定事件等。
    (2)onStart():在活动由不可见变为可见时调用。
    (3)onResume():在活动准备好和用户进行交互的时候调用,此时活动处于运行状态。
    (4)onPause():在系统准备去启动或者恢复另一个活动时调用。通常在这个方法中将一些
    消耗CPU的资源释放掉,以及保存一些关键数据。但这个方法执行速度一定要快,不然会影
    响到新的栈顶活动的使用。
    (5)onStop():在活动完全不可见的时候调用。它和onPause()的主要区别在于,如果启动
    的新活动是一个对话框式,则onPause()会执行,而onStop()并不会执行。
    (6)onDestroy():在活动被销毁之前调用,之后活动状态将变为销毁状态。
    (7)onRestart():在活动由停止状态变为运行状态之前调用,即活动重新启动了。

    An Imasoldier6 Android Developer
  • 相关阅读:
    Powerdesigner数据库建模--概念模型--ER图【转】
    oralce闪回
    DBA
    linux socket使用经验总结
    寒假学习笔记1:结构化程序设计
    寒假作业2:简化电梯设计elevator
    鹤发银丝映日月,丹心热血沃新花——忆三位良师
    走廊泼水节
    种树
    P2938 [USACO09FEB]股票市场Stock Market
  • 原文地址:https://www.cnblogs.com/Iamasoldier6/p/5006836.html
Copyright © 2011-2022 走看看