Activity是一个负责与用户交互的组件 即我们常用的layout和Activity_java类
1 生命周期的探索
五种状态 七种方法
- 启动状态
很短暂 当Acitivity启动后便会进入运行状态
- 运行状态
用户交互界面 Android会尽可能保持这种状态
- 暂停状态
用户操作无响应 被覆盖的Activity处于这种状态
- 停止状态
当Acitivity完全不可见 就处于这种状态
- 销毁状态
清理内存
其中启动状态和销毁状态是过渡状态
关于方法和状态对应我们用一个实例来看
两个Acitivity(假设 one 和 two)
要想看到调用了什么方法 要加打印日志
``
@Override
protected void onStart() {
super.onStart();
Log.i("one","onStart()");
}
@Override
protected void onStop() {
super.onStop();
Log.i("one","onStop()");
}
@Override protected void onDestroy() { super.onDestroy(); Log.i("one","onDestroy()"); } @Override protected void onResume() { super.onResume(); Log.i("one","onResume()"); } @Override protected void onRestart() { super.onRestart(); Log.i("one","onRestart()"); } @Override protected void onPause() { super.onPause(); Log.i("one","onPause()"); } @Override protected void onCreate(@Nullable Bundle savedInstanceState) { Log.i("one","onCreate()"); }
同样的要再你的第二个中也加入 不过one变成two
先来启动项目 只看第一个的变化
调用了三个方法
然后返回一下
调用了三个方法
注意注意现在启动项目 在手机中启动
又创建了
这是第一次打开
随后我们对比一下
现在看一下两个Activity之间的效果
one->two
two 就像第一次打开one一样 三个方法
one 调用了两个方法 但是没有销毁
现在返回去
two->one
one 三个方法不过不在是Oncreate() OnRestart()
当然刚才说的对比就也是这样
two 调用了三个方法 OnDestroy()
现在看一下在one中返回(主界面)一下
在点开程序
我认为这比思维导图够好理解了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?