Intent---用于组件之间的跳转和数据传输


显示意图:---明确指出了目标组件的名称--需要知道组件的名称,更多应用在程序内部

Intent intent=new Intent(); intent.setClass(Context context,***.class);

Intent intent=new Intent(Context context,***.class);

ComponentName name=new CompoentName(Context context,***.class);

Intent intent=new Intent(); intent.setComponentName(name);


意图的属性:

action---对执行动作的描述,String类型,

data---对执行动作所要操作的数据的描述,android中采用Uri来表示数据

component---组件,显示指定Intent的目标组件名称

extra---附加信息,除了data外,还可以通过extra添加附加信息,extra属性使用Bundle类型进行数据传递

putExtra(String key,value)---value类型:基本数据类型、基本类型数组、String String[] 、可序列化对象,bundle

flag---


隐式意图:---未明确指出目标组件的名称---使用Intent-filter 来寻找与其相关的对象---广泛用于不同程序之间的传递

Intent intent=new Intent();

intent.setAction();---设置action,发送一种类型的action,可以让所有支持该类型的activity都收到


隐式意图的过滤:

action:

intent对象中最多只能有一个action

intent-filter中可以声明多个action

如果intent中包含的action,在filter中也有声明,通过测试

如果intent-filter中未声明action,该filter拒绝任何测试

如果intent-filter中未声明action,intent中也不包含任何action,通过测试

category:

intent中可以包含0到多个category

intent-filter中可以包含0到多个category

如果intent中声明的category是intent-filter中声明的category的子集,通过测试

对于传到setActivity()中的intent,会自动为其追加一个category:android.intent.category.DEFAULT

data(Uri):

http:www.163.com:8080/index.jsp

scheme:http---协议

host:www.163.com---主机

port:8080---端口

path:index.jsp---路径



更多相关文章

  1. Android(安卓)使用xml和java混合编写ui
  2. Android图形---OpenGL(二)
  3. android下调用C,JNI调用
  4. Android(安卓)- ToDoList 详解
  5. Android修改、设置锁屏密码
  6. Android修改音量
  7. Application Fundamentals--Processes and Threads(进程与线程)
  8. Html 转换 Txt
  9. 搭建windows下的android开发环境

随机推荐

  1. Android(安卓)Scroll分析(一)
  2. android context
  3. Android(安卓)Studio TV开发教程(一)处理电
  4. Android获取CPU使用率的几种方式
  5. Android中实用小知识
  6. Android占位符,Java占位符
  7. Android(安卓)TextView 单行文本的坑
  8. Android(安卓)Contacts(二)—— SMS 短信
  9. android启动--深入理解zygote
  10. android 夜间模式