Android面试精华:Activity生命周期与跳转详解

需积分: 9 1 下载量 126 浏览量 更新于2024-09-15 收藏 323KB PDF 举报
Android面试题和答案是一份针对求职者准备Android开发面试的重要参考资料。它主要涵盖以下几个核心知识点: 1. **Activity概念**: - Activity在Android中扮演着关键角色,它是应用程序中的一个独立屏幕或界面,可以包含各种UI元素(如按钮、文本框等)。 - 每个Activity都是XML布局文件定义的,并存储在`res/layout`目录下。在应用程序的配置文件`AndroidManifest.xml`中需要声明和注册这些Activity。 2. **Activity生命周期管理**: - `onCreate(Bundle savedInstanceState)`:Activity创建时调用,可以用来初始化组件和读取先前保存的状态。 - `onStart()`:当Activity成为可见并且用户可以交互时调用。 - `onResume()`:活动恢复与用户的交互,即使是从后台回到前台也会被调用。 - `onPause()`:暂停活动,可能是因为切换到其他应用或者屏幕旋转,保存状态以便于资源回收。 - `onStop()`:活动变为不可见但没有被销毁,常用于内存优化。 - `onRestart()`:当Activity重新启动时调用,但不从堆栈顶部移除。 - `onDestroy()`:活动彻底从系统内存中卸载,此时无法再接收用户输入。 3. **Activity间跳转的方法**: - 当一个Activity启动另一个Activity时,涉及的关键方法包括`onCreate()`、`onRestoreInstanceState()`(恢复UI状态)、`onRestart()`、`onStart()`、`onResume()`(显示界面)、`onSaveInstanceState()`(保存状态以备下次启动)和`onPause()`(保存临时数据和停止非必要资源)以及`onStop()`(进入后台但未销毁)和`onDestroy()`(完全销毁前调用)。 4. **处理屏幕旋转与Activity生命周期**: - 如果不设置`android:configChanges`属性,当设备横竖屏切换时,系统会自动管理Activity的生命周期,以避免因屏幕方向变化导致不必要的重建。这通常涉及到`onConfigurationChanged()`方法,开发者需要根据需要决定是否处理屏幕旋转,以优化性能。 理解这些知识点对于Android开发者来说至关重要,可以帮助他们编写高效且适应各种场景的应用程序,并在面试中展现出扎实的基础知识。在实际面试过程中,除了理论知识外,候选人还需要能灵活运用这些概念解决实际问题。