Activity 生命周期
Activity 的四种基本状态
1.运行态(Running)
Activity 处于屏幕最前端,用户可见且获得焦点。
2.暂停态(Paused)
Activity被置于后台,用户可见,但失去焦点
3.停止态(Stopped)
Activity 被新的Activity覆盖失去焦点,用户不可见。
4.终止态(Destroyed)
Activity被系统终止,资源被回收。
Activity 的生命周期
onCreate: 创建Activity 的实例对象的方法
onStart : 启动当前的 Activity 实例的方法
onResume: 如果该方法执行,页面的实例就和用户可以进行交互
onPause: 如果该方法执行,页面就和用户不再交互失去焦点,页面仍旧可见 在内存当中
onStop:页面就和用户完全不可见
onDestroy: 销毁当前的 Activity 的页面实例
onRestart:将至于后台的应用程序的Activity 重新显示在前台的时候被调用
注意:
Activity 的生命周期方法都是成对出现的。onStart----onStop ; OnCreate -----onDestroy ;onResume----onPause
onResume----onPause 方法会比其他的生命周期方法执行的比较频繁,所以一般在这两个方法中写的代码较少
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.i("Activity", "--onCreate--方法执行了"); } @Override protected void onStart() { Log.i("Activtiy", "--onStart--方法执行了"); super.onStart(); } @Override protected void onPause() { Log.i("Activity", "--onPause--方法执行了"); super.onPause(); } @Override protected void onResume() { Log.i("Activity", "--onResume--方法执行了"); super.onPostResume(); } @Override protected void onStop() { Log.i("Activity", "--onStop--方法执行了"); super.onStop(); } @Override protected void onDestroy() { Log.i("Activity", "--onDestroy--方法执行了"); super.onDestroy(); } @Override protected void onRestart() { Log.i("Activity", "--onRestart--方法执行了"); super.onRestart(); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } }
详细可以转至:http://www.cnblogs.com/heyhhz/p/6121767.html
谢谢大家的关注。世界上只有想不通的人,没有走不通的路
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误