安卓开发-03-四大组件

发布时间:2024年01月16日

一、四大组件

Android四大组件有Activity,Service服务,Content Provider内容提供,BroadcastReceiver广播接收器。

二、组件一–基本程序单元activity

Activity中所有操作都与用户密切相关,是一个负责与用户交互的组件,可以通过setContentView(View)来显示指定控件。
在一个android应用中,一个Activity通常就是一个单独的屏幕,一个屏幕中有多个组件它上面可以显示一些控件也可以监听并处理用户的事件做出响应。Activity之间通过Intent进行通信。

activity概述

四个状态:运行状态,暂停状态,停止状态,销毁状态
在这里插入图片描述
生命周期
在这里插入图片描述

创建,配置activity

在这里插入图片描述
④在主文件Android Manifest. xmI进行相应配置
在这里插入图片描述

启动和关闭activity

启动分为两种方式:入口acvtivity和其他activity
入口通过配置intent过滤器
在这里插入图片描述
其他:通过startactivity启动
在这里插入图片描述
关闭:finish()
在这里插入图片描述
PS:onCreate(null)可以实现刷新当前activity

多个activity使用

多个activity之间交换数据:使用Bundle在activity之间交换数据
在这里插入图片描述
Bundle是键值对的组合,通过key找到value值
在这里插入图片描述
传入数据
在这里插入图片描述
接收数据
在这里插入图片描述
调用另一个activity并返回结果:startActivityForResult()方法
在这里插入图片描述
传入数据:
在这里插入图片描述
接受数据
在这里插入图片描述
在这里插入图片描述

使用Fragment

Fragment是Android开发中的一个重要组件,它可以理解为Activity的一部分,用于构建更灵活的用户界面。

1. 界面模块化:Fragment可以被看作是一个独立的界面模块,可以在一个Activity中嵌入多个Fragment,实现界面的模块化开发和重用。

2. 界面分割:使用Fragment可以将一个大的界面拆分成多个小的片段,每个Fragment负责自己的布局和逻辑,使得应用在不同的设备屏幕尺寸上能够更好地适配。

3. 生命周期管理:Fragment具有自己的生命周期,可以在不同的生命周期方法中执行特定的操作,例如初始化数据、响应用户交互以及保存和恢复状态等。

4. 布局灵活性:Fragment具有自己的布局文件,可以通过添加不同的Fragment来动态改变界面布局,以适应不同的需求和设备。

5. 交互通信:Fragment可以通过Activity作为中间人与其他Fragment或Activity进行通信,实现数据传递和事件分发。

6. 后退栈管理:Fragment可以与Activity的后退栈进行交互,实现类似Activity的返回和导航功能。

在activity中描述行为或用户界面,可以在多个activity中重用frament,也可在一个activity中使用多个frament建立多个UI面板

生命周期

activity的下属,activity停止,fragment随之停止
在这里插入图片描述

创建fragment:extends Fragment

在这里插入图片描述

在activity中添加Fragment

直接在布局文件中添加Fragment
在这里插入图片描述
实际情况一般是动态添加Fragment:在activity运行时添加Fragment
在这里插入图片描述

三、组件二–应用核心Intent

概念

在这里插入图片描述
三个组件利用Intent进行组件之间的通信和数据传递。
在这里插入图片描述

Intent对象属性

在这里插入图片描述
通过设置component name启动activity
在这里插入图片描述
action和data:行为和传递的数据
action通过安卓给定的常量进行设置
data需要和action联合使用,不同常量data值不同
在这里插入图片描述
在这里插入图片描述
注意安卓需要设置运行打电话和发送短息的权限:
在这里插入图片描述
action和category:调用系统的activity。
category:描述执行动作的类别,通过安卓给定的常量进行设置
在这里插入图片描述
Extras:提供附加信息,利用键值对进行保存,用于多个activity之间进行数据交换
Flags:指示安卓程序如何启动activity,以及启动以后如何处理
在这里插入图片描述

Intent种类

显式Intent

明确知道目标组件的名称
在这里插入图片描述
创建方法
在这里插入图片描述

隐式Intent

创建时不指定组件名称,只是定义要执行的action,category和data,自动匹配对应的目标组件
在这里插入图片描述
在这里插入图片描述

区别:
在这里插入图片描述

Intent过滤器

根据某一个Intent中的action,category和data属性,对适合接受这个Intent的组件进行匹配和筛选的机制,应用于使用隐式Intent启动action的时候
在这里插入图片描述
设置过滤器:通过标记在AndroidManifest.xml文件中配置
在这里插入图片描述
常用两种过滤器
在这里插入图片描述

四、Service服务

概念

能够在后台长时间运行,并且没有用户界面的应用程序组件。例如在后台下载文件,播放歌曲等

分类

在这里插入图片描述

Service基本用法

创建与配置

在这里插入图片描述

在这里插入图片描述
需要重写这几个方法

启动

在这里插入图片描述

停止

在这里插入图片描述

生命周期

在这里插入图片描述

Bound Service

用于和service和activity之间通信

生命周期

在这里插入图片描述

基本步骤

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Intent Service的基本用法

在这里插入图片描述

五、消息、通知和广播

通过Toast显示消息提示框

特点:
	没有控制按钮
	不会获得焦点
	过一会儿自动消失	

在这里插入图片描述
在这里插入图片描述

使用AlertDialog实现对话框

在这里插入图片描述

带取消、确定按钮的对话框

在这里插入图片描述

列表对话框

在这里插入图片描述

带单选列表项的列表对话框

在这里插入图片描述

带多选列表项的列表对话框

在这里插入图片描述

总结

在这里插入图片描述

使用Notification显示通知

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

使用BroadcastReceiver

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

文章来源:https://blog.csdn.net/ning_xiao_xuan/article/details/133977233
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。