黑马程序员技术交流社区

标题: android生命周期 [打印本页]

作者: ╰_hEy_ゞ    时间: 2014-3-11 14:50
标题: android生命周期
1. Activity的状态:
    激活态:任务堆栈的顶部,得到用户的焦点
    暂停态:得不到用户焦点,能够看到
    停止态:完全看不到

完整周期:onCreate()--->onDestroy();
可见周期:onStart()---->onStop();
          onStart()---->onRetart()--->onStop();
前台周期:onResume()--->onPause();

问题:当用户在使用某个软件时(有界面),接到一个来电,用户接完电话后继续使用软件,请写出来电过程中Activity的生命周期方法的调用顺序,并简单解释。

  onPause()-->onStop()-->onRetart()-->onStart()-->onResume()

2.onSaveInstanceState()的调用:遵循一个原则:当系统“未经你许可”时有可能销毁你的activity时                               调用该方法,系统必须提供一个机会让你保存数据。

   “未经你许可”包括哪些情况:

          1)当用户按下HOME键时
          2)长按HOME键,选择运行其他的程序时
          3)按下电源按键(关闭屏幕显示)时。
          4)屏幕方向切换时,例如从竖屏切换到横屏
             在屏幕切换前,系统会销毁Activity A,在屏幕切换之后系统又会自动地创建Activity A所以onSaveInstanceState()和onRestoreInstanceState()都被调用,这种情况一对操作。
          5)从Activity A中启动一个新的Activity 时

3.建立AlertDialog对象,演示Activity与非Activity对象之间的切换与状态的关系


总结:1.FirstActivity, 操作返回键和HOME键的解释状态转换
      2.建立SecondActivity,两个Activity的切换
      3.任务堆栈Task,建立对话框风格的Activity,演示onPause()和onResume()的调用
      4.演示onSaveInstanceState()和onRestoreInstanceState()的调用
      5.建立AlertDialog对象,演示Activity与非Activity对象之间的切换与状态的关系







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2