Android Activity与Intent详解:启动、暂停、停止与销毁

需积分: 1 0 下载量 79 浏览量 更新于2024-09-08 收藏 260KB PPTX 举报
本文主要介绍了Android中的核心组件Activity和Intent,以及它们的相关概念和使用。 在Android操作系统中,Activity是用户界面的主要载体,它代表了应用程序中用户可见且可交互的单个屏幕。Activity有四种状态,分别是: 1. 活动状态或运行状态(Active/Running):当一个Activity启动后位于屏幕最前端,它处于栈顶,对用户可见且可交互。 2. 暂停状态(Paused):当Activity失去焦点,但并未完全被覆盖,例如被一个非全屏或透明的Activity取代时,它会进入暂停状态。此时Activity保持活力,但不再与用户交互,系统内存紧张时可能被终止。 3. 停止状态(Stopped):如果Activity被其他Activity完全覆盖,它会变为停止状态,虽然仍保留状态信息,但不可见,系统内存紧张时也可能被终止。 4. 杀死状态(Killed):在暂停或停止状态下,系统可能会删除Activity以回收内存,当Activity需要再次显示时,必须重新初始化。 创建Activity通常包括两个步骤: 1. 首先,创建一个继承自Activity的Java类,例如`NewActivity`,并在`onCreate()`方法中设置视图布局。 ```java public class NewActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 使用setContentView(R.layout.xxx)加载布局文件。 } } ``` 2. 接着,在`AndroidManifest.xml`文件中声明Activity,指定其类名和标签等属性,以便系统能识别并加载。 ```xml <activity android:name=".NewActivity" android:label="新activity的页面标题"/> ``` Intent是Android中用于启动Activity、Service或BroadcastReceiver的工具,它可以携带数据。Intent有两种类型:显式Intent(指定目标组件)和隐式Intent(基于IntentFilter匹配组件)。 使用Intent启动Activity的常见方式是通过`startActivity(Intent intent)`方法。例如: ```java Intent intent = new Intent(this, NewActivity.class); startActivity(intent); ``` IntentFilter则用于定义Activity或BroadcastReceiver可以响应的Intent类型,这使得其他组件可以通过隐式Intent找到并启动它们。 了解Activity和Intent的生命周期是至关重要的,因为它们决定了应用程序如何响应用户的操作和系统的资源管理。Activity的生命周期包括`onCreate()`, `onStart()`, `onResume()`, `onPause()`, `onStop()`, `onDestroy()`等方法,开发者需要在这些方法中适当地保存和恢复状态,以确保用户体验的连续性。 总结起来,Activity是Android应用的核心组件,承载用户界面,而Intent则是连接不同组件的桥梁,通过Intent可以启动Activity、传递数据。理解并熟练运用这两者是开发Android应用的基础。