Intent的多种作用(传activity&组件调用)
来源:互联网 发布:mini metro mac下载 编辑:程序博客网 时间:2024/06/01 08:15
Intent的作用和表现形式简介
1.描述:Intent负责对应用中一次操作的动作,动作涉及的数据,附加数据进行描述。系统或者应用根据此Intent的描述,负责找到对应的组件,将Intent传递给调用的组件,并且完成组件的调用。
Intent在这里起着一个媒体中介的作用,专门提供组件相互调用的相关信息。
2.Intent的表现形式:
激活一个Activity
开启服务
发送广播
访问ContentProvider
3.Intent的属性设置:
设置动作:setAction 表示要干什么
setData:设置数据,表示要传递给目标组件的数据。它是一个URI格式的数据。
setType:表示要访问的数据类型,是一个MIME类型的数据(Image/* Voide/* text/plain vnd.android.dir/image)
addCategory:设置要访问的组件的类别,可以同时添加多个类别。
4.显示意图和隐式意图
显示调用:直接指定要调用的组件的类名 一般在调用本应用程序时使用
隐式调用:通过对要调用的组件的动作,类别,数据的描述,来访问目标组件。 一般在调用第三方软件时使用。
5.附加数据 附加数据实现的两种方式
1.intent.putExtra(key,value)
2.通过Bundle附加数据 Bundle类似于HashMap intent.putExtras(Bundle)
当一个Activity需要被其他软件调用时,该Activity必须是指为隐式意图。
一个Activity可以配置多个意图过滤器,一个意图过滤器也可以配置多个,可以配置多个,在使用时,只要有一个意图过滤器,对应的一个,以及满足要求,就可以打开该Activity。
访问网络时,一定要添加权限。
调用一个应用去浏览网页时,本应用不一定需要添加访问网络的权限,但是被调用应用程序一定要有网络访问的权限。
意图过滤器中的动作可以自己定义,不需要完全使用系统定义好的动作。
意图在显示调用时,会默认添加一个Intent.CATEGORY_DEFAULT 显示意图的Activity一般把设置为CATEGORY_DEFAULT
intent可以传递的数据类型:
基本数据类型 以及String String/CharSequence
传递一个Bundle
传递Serializable对象
Parcelable对象
Intent
归根结底都是通过Bundle来实现数据封装。而Bundle则是通过Map的数据结构来存储数据。
Intent在传递数据时,数据必须在Intent进行跳转之前设置,否则数据无法携带过去。
- Intent的多种作用(传activity&组件调用)
- 调用另一个Activity(Intent的使用)
- intent 调用系统的组件
- Android学习之路(三)之 显式Intent对于Activity之间的多种跳转方式
- Android中intent启动Activity中intent.setFlags()的作用
- Android中intent启动Activity中intent.setFlags()的作用
- Android中intent启动Activity中intent.setFlags()的作用
- Android中intent启动Activity中intent.setFlags()的作用
- Android中intent启动Activity中intent.setFlags()的作用
- 调用另一个Activity----Intent对象的使用
- 调用另一个Activity---Intent对象的使用
- anroid Intent调用系统组件的方法
- android面试03--通过startActivity(intent)调用Activity中的方法与new Activity调用Activity中方法的区别
- Intent调用系统组件
- intent隐式调用大全(调用系统的的组件)
- Android之多个Activity之间的关系和Intent作用
- Intent在Activity中起到了重要的桥梁作用
- Android 中Intent组件实现简单的Activity跳转
- [Leetcode] Binary tree-- 637. Average of Levels in Binary Tree
- vSphere,ESXi,vCenter之间的关系
- socket C/C++编程(2)Samba工具——将Windows本地文件 Automatically 同步到Linux上(反之亦成立)
- org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)新的异常解决方案
- 二叉树已知前序和后序求中序的相关补充
- Intent的多种作用(传activity&组件调用)
- Android MediaRecorder自定义分辨率
- ORACLE ORA-00600: 内部错误代码, 参数: [kokbcvb1]与merge into
- HDU 6103 Kirinriki(尺取法)
- A%BProblem——线性筛素数与前缀和
- Python3 打包成.exe(附IndexError: tuple index out of range错误解决)
- nosql-mongodb
- [Leetcode] Binary tree--112. Path Sum
- 【Ubuntu-Tensorflow】程序结束掉GPU显存没有释放的问题