Intent对象学习

来源:互联网 发布:最有效的网络推广 编辑:程序博客网 时间:2024/05/29 09:30

Intent对象

一个Android程序由多个组件组成,各个组件使用Intent通信。

  • 传递给Activity

    启动新Activity或者已存在的Activity去做其他任务。

Context.startActivity();//Activity.startActivityForResult();Activity.setResult();//将信息返回给调用的startActivityForResult()的Activity
  • 传递给Service
Context.startService();Context.bindService();//调用组件和目标Service链接
  • 传递给BroadcastReceiver
Context.sendBroadcast();Context.sendOrderedBroadcast();Context.sendStickyBroadcast();//广播出去

组件名称(Component Name)
系统可自动设置
设置名称

  • setComponent();
  • setClassName();
  • setClass()
    获取名称

  • getComponent();

动作

  • 设置动作setAction();
  • 方法读取getAction();
  • 标准Activity动作
    常用,其余需要时可查询API
    标准动作说明
常量 说明 ACTION_MAIN 作为初始化Activity启动,没有数据输入和输出 ACTION_EDIT 将数据显示给用户编辑 ACTION_VIEW 将数据显示给用户

使用时需要转换成为对应字符串信息:
ACTION_MAIN–>android.intent.action.MAIN
- 标准广播动作
常使用Context.registerReceiver();
或者配置文件receiver标签中
数据(Data)
Data表示操作数据的URI和MIME类型
URI:数据地址 MIME:数据类型

  • 设置URI和MINE:setDataAndType();
  • 获取URI:getData();
  • 获取MINE类型:getType();

    常用

动作 类型数据规范 ACTION_EDIT 编辑文件URI ACTION_CALL tel:URI ACTION_VIEW http:URI

种类(Category)

Category是一种字符串,包含附加信息

  • 增加到Intent对象:addCategory();
  • 删除上次增加种类:removeCategory();
  • 获取当前种类包含对象:getCategory();

    额外(Extras)
    包含额外信息。

  • 设置和读取Bundle

  • putExtras();
  • getExtras();
    标记(Flags)
    标记不同来源,所以标记都是整数类型。
0 0
原创粉丝点击