Android安卓——Activity组件代码测试生命周期(续)
来源:互联网 发布:海口seo外包公司 编辑:程序博客网 时间:2024/05/16 17:41
经过之前对安卓中Activity组件的学习,可以在理论上明白Activity的作用和用法。
本次的学习主要是Activity的生命周期运行情况的实践。通过实际的系统调用情况来确定生命周期的流程。
Activity组件(1)
Activity组件(2)
建立一个类实现所有的生命周期的方法
package edu.hrbeu.ActivityLifeCycle;import android.app.Activity;import android.os.Bundle;import android.util.Log;public class ActivityLifeCycle extends Activity { private static String TAG = "LIFTCYCLE"; @Override //完全生命周期开始时被调用,初始化Activity public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Log.i(TAG, "(1) onCreate()"); } @Override //可视生命周期开始时被调用,对用户界面进行必要的更改 public void onStart() { super.onStart(); Log.i(TAG, "(2) onStart()");} @Override //在onStart()后被调用,用于恢复onSaveInstanceState()保存的用户界面信息 public void onRestoreInstanceState(Bundle savedInstanceState) { super.onRestoreInstanceState(savedInstanceState); Log.i(TAG, "(3) onRestoreInstanceState()"); } @Override //在活动生命周期开始时被调用,恢复被onPause()停止的用于界面更新的资源 public void onResume() { super.onResume(); Log.i(TAG, "(4) onResume()"); } @Override // 在onResume()后被调用,保存界面信息 public void onSaveInstanceState(Bundle savedInstanceState) { super.onSaveInstanceState(savedInstanceState); Log.i(TAG, "(5) onSaveInstanceState()"); } @Override //在重新进入可视生命周期前被调用,载入界面所需要的更改信息 public void onRestart() { super.onRestart(); Log.i(TAG, "(6) onRestart()"); } @Override //在活动生命周期结束时被调用,用来保存持久的数据或释放占用的资源 public void onPause() { super.onPause(); Log.i(TAG, “(7) onPause()”);、 } @Override //在可视生命周期结束时被调用,一般用来保存持久的数据或释放占用的资源 public void onStop() { super.onStop(); Log.i(TAG, "(8) onStop()"); } @Override //在完全生命周期结束时被调用,释放资源,包括线程、数据连接等 public void onDestroy() { super.onDestroy(); Log.i(TAG, "(9) onDestroy()"); }}
全生命周期
- 启动Activity
- 按下模拟器的“返回键”
- 关闭Activity
LogCat输出结果为:
(1) onCreate()
(2) onStart()
(4) onResume()
(7) onPause()
(8) onStop()
(9) onDestroy()
调用onCreate()函数分配资源 调用onStart()将Activity显示在屏幕上 调用onResume()获取屏幕焦点 调用onPause()、onStop()和onDestroy(),释放资源并销毁进程
可视生命周期
- 启动ActivityLifeCycle
- 按“呼出/接听键”启动内置的拨号程序
- 再通过“返回键”退出拨号程序
- ActivityLifeCycle重新显示在屏幕中
LogCat输出结果为: 5、7、8、6、2、4
函数的调用顺序: onSaveInstanceState ()→ onPause()→ onStop() → onRestart()→ onStart()→ onResume()调用onSaveInstanceState()函数保存Activity状态 调用onPause()和onStop(),停止对不可见Activity的更新 调用onRestart()恢复需要界面上需要更新的信息 调用onStart()和onResume()重新显示Activity,并接受用户交互
活动生命周期
- 启动ActivityLifeCycle
- 通过“挂断键”使模拟器进入休眠状态
- 再通过“挂断键”唤醒模拟器
LogCat输出结果为:5、7、4
函数调用顺序如下: onPause() → onSaveInstanceState() → onResume()调用onSaveInstanceState ()保存Activity的状态 调用onPause()停止与用户交互 调用onResume()恢复与用户的交互
阅读全文
0 0
- Android安卓——Activity组件代码测试生命周期(续)
- Android 组件 — Activity (生命周期管理)
- Android安卓——Activity组件(1)
- Android安卓——Activity组件(2)
- 安卓四大组件之Activity-生命周期
- 安卓学习(一) 安卓组件与Activity生命周期
- Android Activity 组件生命周期
- 四大组件 — Activity生命周期
- Android——通过案例代码测试Activity的整个生命周期
- 安卓四大组件之一Activity的生命周期
- Android四大组件——Activity的生命周期
- Android四大组件之Activity(生命周期)
- 安卓activity生命周期
- 安卓activity生命周期
- 安卓activity生命周期
- 安卓Activity 生命周期
- 安卓Activity生命周期
- 安卓-Activity生命周期
- 201403-3 命令行选项
- 第二节课
- 部分函数调用之内核细究
- 开发环境以及启动模式
- 图像去雾之何凯明暗通道先验去雾算法原理及c++代码实现
- Android安卓——Activity组件代码测试生命周期(续)
- Android Studio 使用小技巧总结
- 已知主机 ip 和子网掩码,计算这个主机所在网络的网络地址和广播地址的解法
- 深度学习-语义分割总结
- Spring Boot中使用Redis数据库
- Linux报错ping: https://www.baidu.com: Name or service not known;centos7 无法启动网络(service network restart
- 朴素贝叶斯应用之文本分类
- 安装国际版 WPS
- Spring Boot中使用MongoDB数据库