Android面试必备:Activity生命周期详解
需积分: 9 171 浏览量
更新于2024-09-15
收藏 323KB PDF 举报
"这是一份详细的Android面试题和答案PDF,涵盖了关于Activity生命周期、Activity间跳转以及横竖屏切换时Activity的行为等核心知识点。"
在Android开发中,Activity是构成应用程序用户界面的基本单元,它负责展示用户可以看到和交互的屏幕。Activity的界面通常通过XML布局文件定义,并在`res/layout`目录下存储。每个新创建的Activity都需要在`AndroidManifest.xml`中注册,以便系统能够识别并管理它们。
Activity的生命周期是其行为的关键部分,包括以下几个主要方法:
1. `onCreate(Bundle savedInstanceState)`:当Activity首次创建时调用,用于初始化界面和应用状态。`savedInstanceState`参数是一个可选的Bundle,用于在Activity被系统销毁后恢复先前的状态。
2. `onStart()`:当Activity变得对用户可见时调用,但还没有与用户交互。
3. `onResume()`:Activity准备与用户交互时调用,此时Activity位于栈顶并完全可见。
4. `onPause()`:当Activity失去焦点但仍然可见(例如,一个新的透明Activity覆盖了它)时调用,用于保存状态和执行轻量级操作。
5. `onStop()`:当Activity完全不可见时调用,可能即将被销毁或被其他Activity覆盖。
6. `onRestart()`:如果Activity被暂停后重新启动,会先调用此方法。
7. `onDestroy()`:Activity从系统内存中彻底移除前的最后一次回调,意味着Activity将被彻底结束。
当两个Activity之间进行跳转时,涉及以下生命周期方法的调用顺序:
1. `onCreate()`:新Activity创建时。
2. `onRestoreInstanceState()`:如果之前保存过状态,此方法用于恢复UI状态。
3. `onRestart()`:如果Activity被暂停后重启。
4. `onStart()`:Activity即将对用户可见时。
5. `onResume()`:Activity与用户开始交互。
关于横竖屏切换时Activity的生命周期,有两种情况:
1. **不设置`android:configChanges`**:系统默认情况下,当设备屏幕方向改变时,Activity会完全重建,调用`onDestroy()`和`onCreate()`。这样会导致数据丢失,因为默认不保存状态。
2. **设置`android:configChanges="orientation|screenSize"`**:在`AndroidManifest.xml`中声明处理屏幕方向变化,Activity的生命周期不会重建,而是调用`onConfigurationChanged(Configuration newConfig)`方法,允许你在不丢失状态的情况下处理配置更改。
理解并掌握Activity的生命周期对于开发健壮且响应式的Android应用至关重要,因为它有助于优化性能,确保用户体验,并处理异常情况。此外,熟悉Activity间的跳转和横竖屏切换处理也是面试中常考的知识点。
2019-12-14 上传
2022-07-14 上传
2024-01-25 上传
2020-05-12 上传
2022-07-13 上传
2022-07-13 上传
2021-10-19 上传
ycl19851011
- 粉丝: 0
- 资源: 3
最新资源
- IEEE 14总线系统Simulink模型开发指南与案例研究
- STLinkV2.J16.S4固件更新与应用指南
- Java并发处理的实用示例分析
- Linux下简化部署与日志查看的Shell脚本工具
- Maven增量编译技术详解及应用示例
- MyEclipse 2021.5.24a最新版本发布
- Indore探索前端代码库使用指南与开发环境搭建
- 电子技术基础数字部分PPT课件第六版康华光
- MySQL 8.0.25版本可视化安装包详细介绍
- 易语言实现主流搜索引擎快速集成
- 使用asyncio-sse包装器实现服务器事件推送简易指南
- Java高级开发工程师面试要点总结
- R语言项目ClearningData-Proj1的数据处理
- VFP成本费用计算系统源码及论文全面解析
- Qt5与C++打造书籍管理系统教程
- React 应用入门:开发、测试及生产部署教程