"Android程序设计-Activity(记事本).pptx"
在Android程序设计中,Activity是构建用户界面的基本单元,它代表了用户可以看到和交互的屏幕。本资源主要探讨了Activity及其与其它组件的关系,包括Intent、Service、Broadcast以及数据存储等方面。
1. **Activity**:
- **Task和Activity栈管理**:Task是一个Activity的集合,它使用栈的数据结构来管理Activity。当用户启动新的Activity时,这个Activity会被压入栈顶,而当前Activity则成为栈底。当用户按返回键时,栈顶的Activity会被弹出,显示其下方的Activity,这就形成了所谓的返回栈。
- **Activity的生命周期**:Activity有多种状态,包括created、started、resumed、paused、stopped和destroyed。系统会根据应用的状态和设备资源管理Activity的生命周期,比如按下Home键或打开新的Activity时,当前Activity会被暂停和停止。
2. **Intent**:
- **Intent的概念**:Intent是一个对象,它表示一个动作的意图,可以用来启动Activity、Service或触发BroadcastReceiver。Intent包含两部分:Action(动作)和Data(数据),描述了想要执行的操作和涉及的数据。
- **Intent过滤器**:为了使组件能够响应特定的Intent,开发者需要定义Intent过滤器,这样只有匹配Intent过滤器的Intent才能启动对应的组件。过滤器包含了Action、Category、DataType等属性,用于筛选Intent。
3. **Service**:
- Service是在后台运行且不提供用户界面的组件。它可以长时间执行操作,比如播放音乐或网络通信,即使用户离开应用依然可以运行。Service可以通过startService()或bindService()方法启动,前者不会返回结果,而后者创建一个连接以与Service交互。
4. **Broadcast**:
- 广播接收器BroadcastReceiver用于接收系统或应用发送的广播消息。当特定事件发生,如网络状态改变、电池电量低等,系统会发送广播,BroadcastReceiver监听到后执行相应操作。
5. **数据存储**:
- Android提供了多种数据存储方式,包括SharedPreferences(键值对存储)、内部存储(私有文件系统)、外部存储(公共文件系统)、SQLite数据库和ContentProvider(用于跨应用数据共享)。
6. **Canvas&Paint**:
- Canvas是Android图形绘制的核心,允许开发者在Bitmap上画图。Paint对象则包含了绘制时的颜色、样式、字体等属性,是控制绘制效果的关键。
这些知识构成了Android应用程序的基础框架,通过熟练掌握Activity、Intent、Service、Broadcast和数据存储等概念,开发者可以构建出功能丰富的移动应用。同时,理解Canvas和Paint的用法,可以使应用拥有更个性化的用户界面。