Intent 笔记(一)

1. Intent 与 Bundle 传值区别

Bundle在存取数据是比较灵活的,而Intent在存取数据的种类很少且没有指定数据类型;

想对数据进行比较灵活的操作如批量操作的话就用bundle;
Bundle是可以对对象进行操作的,而Intent不可以。Bundle相对于Intent比较偏下层,比Intent接口更多,更灵活,但Bundle仍需要借助Intent才能在Activity之间传递。

概括一下,Intent旨在数据传递,bundle旨在存取数据,当然intent也提供一部分数据的存取,但比起bundle就显得很不灵活。

2.Intent 对象


Intent对象大致包含 Component(指明目标组件)、Action、Category、Data、Type、Extra(携带数据)和Flag这7中属性。

1.Component

Component 通过对象使用,创建对象 ComponentName  comp = new Component(MainActivity.this,SecondActivity.class)

Intent设置目标 Intent.setComponent() ,Intent.getComponent()

2.Action、Category属性与intent-filter配置

Action 表示要完成的一个抽象“动作”  Intent.setIntent()   一个

Category  用于Action增加额外的附加类别信息 Intent.addCategory()   多个

3.Extra

用于多个Activity间传递数据,Extra应该是一个Bundle对象,类似Map对象,存Key-Value数据

4.Flag

为Intent添加一些额外的控制旗标addFlag

如Intent.FLAG_ACTIVITY_CLEAR_TOP旗标可以用于清除当前Activity栈中的Activity

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值