Android四大组件有Activity,Service服务,Content Provider内容提供,BroadcastReceiver广播接收器。
Activity中所有操作都与用户密切相关,是一个负责与用户交互的组件,可以通过setContentView(View)来显示指定控件。
在一个android应用中,一个Activity通常就是一个单独的屏幕,一个屏幕中有多个组件它上面可以显示一些控件也可以监听并处理用户的事件做出响应。Activity之间通过Intent进行通信。
四个状态:运行状态,暂停状态,停止状态,销毁状态
生命周期
④在主文件Android Manifest. xmI进行相应配置
启动分为两种方式:入口acvtivity和其他activity
入口通过配置intent过滤器
其他:通过startactivity启动
关闭:finish()
PS:onCreate(null)可以实现刷新当前activity
多个activity之间交换数据:使用Bundle在activity之间交换数据
Bundle是键值对的组合,通过key找到value值
传入数据
接收数据
调用另一个activity并返回结果:startActivityForResult()方法
传入数据:
接受数据
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
实际情况一般是动态添加Fragment:在activity运行时添加Fragment
三个组件利用Intent进行组件之间的通信和数据传递。
通过设置component name启动activity
action和data:行为和传递的数据
action通过安卓给定的常量进行设置
data需要和action联合使用,不同常量data值不同
注意安卓需要设置运行打电话和发送短息的权限:
action和category:调用系统的activity。
category:描述执行动作的类别,通过安卓给定的常量进行设置
Extras:提供附加信息,利用键值对进行保存,用于多个activity之间进行数据交换
Flags:指示安卓程序如何启动activity,以及启动以后如何处理
明确知道目标组件的名称
创建方法
创建时不指定组件名称,只是定义要执行的action,category和data,自动匹配对应的目标组件
区别:
根据某一个Intent中的action,category和data属性,对适合接受这个Intent的组件进行匹配和筛选的机制,应用于使用隐式Intent启动action的时候
设置过滤器:通过标记在AndroidManifest.xml文件中配置
常用两种过滤器
能够在后台长时间运行,并且没有用户界面的应用程序组件。例如在后台下载文件,播放歌曲等
需要重写这几个方法
用于和service和activity之间通信
特点:
没有控制按钮
不会获得焦点
过一会儿自动消失