Android面试必备:Activity生命周期详解
需积分: 9 145 浏览量
更新于2024-09-10
收藏 323KB PDF 举报
"这篇资料主要涉及的是Android面试的相关问题,特别是关于Android应用开发中的Activity管理和生命周期的知识点。"
在Android应用开发中,Activity是构成应用程序的主要组件,它代表用户可以看到和交互的一个屏幕。Activity通常由XML布局文件定义,存储在res/layout目录下,创建后需在AndroidManifest.xml文件中进行注册,以便系统能够识别和管理。
Activity的生命周期是开发者必须掌握的核心概念,它涉及到以下关键方法:
1. onCreate(Bundle savedInstanceState): 当Activity首次创建时调用,用于初始化界面和设置基本属性。savedInstanceState参数允许恢复之前保存的状态。
2. onStart(): Activity变得对用户可见时调用,此时用户可以开始看到Activity,但可能还不透明。
3. onResume(): Activity开始与用户交互时调用,至此Activity完全可见并准备接收用户输入。
4. onPause(): 当Activity失去焦点,即将被暂停或覆盖时调用,适合保存当前状态和做必要的清理工作。
5. onStop(): Activity完全不可见时调用,一般在用户离开Activity或有新的Activity覆盖时发生。
6. onRestart(): 如果Activity被暂停后重新启动,会先调用此方法。
7. onDestroy(): Activity即将从系统内存中彻底移除时调用,是Activity生命周期的最后阶段。
在两个Activity之间的跳转过程中,以下方法必然会被调用:
- onCreate(): Activity生命周期开始时调用。
- onRestoreInstanceState(Bundle savedInstanceState): 恢复先前保存的UI状态。
- onRestart(): 当Activity被重新启动时调用。
- onStart(): Activity将要对用户可见时调用。
- onResume(): Activity开始与用户交互,绘制界面。
- onSaveInstanceState(Bundle outState): 在Activity即将移出栈顶并需要保留UI状态时调用。
- onPause(): 暂停当前Activity,用于保存数据和停止资源消耗的操作。
- onStop(): 当Activity不再可见时调用。
- onDestroy(): Activity销毁前的最后一个方法。
关于横竖屏切换时Activity的生命周期,如果没有在AndroidManifest.xml中设置`android:configChanges`属性,系统默认会销毁并重建Activity,因此会依次经历onDestroy() -> onCreate() -> onStart() -> onResume()的过程。如果设置了`android:configChanges`来处理屏幕方向变化,那么Activity只会调用onConfigurationChanged()方法,而不会完全重建。了解这一行为对于优化性能和处理配置变更非常重要。
111 浏览量
2020-02-23 上传
2022-07-14 上传
2021-09-15 上传
2024-01-25 上传
2015-01-11 上传
2015-11-04 上传
2013-10-04 上传
qwerasdfdd
- 粉丝: 0
- 资源: 4
最新资源
- C语言数组操作:高度检查器编程实践
- 基于Swift开发的嘉定单车LBS iOS应用项目解析
- 钗头凤声乐表演的二度创作分析报告
- 分布式数据库特训营全套教程资料
- JavaScript开发者Robert Bindar的博客平台
- MATLAB投影寻踪代码教程及文件解压缩指南
- HTML5拖放实现的RPSLS游戏教程
- HT://Dig引擎接口,Ampoliros开源模块应用
- 全面探测服务器性能与PHP环境的iprober PHP探针v0.024
- 新版提醒应用v2:基于MongoDB的数据存储
- 《我的世界》东方大陆1.12.2材质包深度体验
- Hypercore Promisifier: JavaScript中的回调转换为Promise包装器
- 探索开源项目Artifice:Slyme脚本与技巧游戏
- Matlab机器人学习代码解析与笔记分享
- 查尔默斯大学计算物理作业HP2解析
- GitHub问题管理新工具:GIRA-crx插件介绍