Android面试精华:Activity详解与生命周期管理

需积分: 9 0 下载量 16 浏览量 更新于2024-09-09 1 收藏 323KB PDF 举报
在Android面试中,面试官通常会考察应聘者对基础核心概念的理解,特别是Activity和Activity生命周期管理。Activity 是Android应用程序的基本构建单元,它代表了一个屏幕或一个交互场景,通常由XML布局文件定义(res->layout目录),并在AndroidManifest.xml文件中声明。每个Activity都有其特定的生命周期阶段,包括: 1. onCreate(Bundle savedInstanceState):这是Activity创建时被调用的方法,此时可以初始化视图和数据,并通过`savedInstanceState`参数恢复先前的状态。 2. onStart():当Activity变得可见并对用户可见时,会触发此方法。 3. onResume():当Activity开始与用户交互时,如接收到焦点或显示出来,无论原因如何(重新启动或初次启动),都会调用此方法。 4. onPause():当Activity失去焦点或暂停操作,如进入后台或切换到其他应用,执行此方法以保存状态,确保资源的合理分配。 5. onStop():当Activity变为不可见但并未销毁,此方法被调用,一般在内存不足时会调用,以释放资源。 6. onRestart():当Activity重新恢复可见性时,即使之前已处于暂停状态,也会调用这个方法。 7. onDestroy():当Activity完全从内存中卸载或用户手动结束时,此方法最后被执行。 在Activity之间的跳转过程中,关键生命周期方法包括:onCreate()在新Activity启动时调用,用于初始化;onRestoreInstanceState()用于恢复上一个Activity的状态;onReStart()和onStart()确保界面的更新;onResume()负责实际的用户交互;onSaveInstanceState()保存当前状态,准备下一次可能的回退;onPause()在切换前保存数据;onStop()当Activity不再可见时调用;而onDestroy()在销毁前执行清理工作。 至于横竖屏切换时Activity的生命周期管理,如果未设置android:configChanges属性,则系统会自动处理横竖屏变化,无需开发者干预,这可能导致Activity重绘或重建。设置该属性时,需要根据应用需求来决定是否处理这些配置更改,以避免不必要的资源消耗。正确处理横竖屏切换能够确保用户体验的一致性和性能优化。