Ex3.10 不同Activity之间的数据传递——Bundle对象的实现
2011-04-26 17:39
656 查看
在上例中(Ex3.9)中实现了Activity之间的跳转,虽然我扩展到三个Activity间的跳转,但各个Activity间是相互独立并存的。这一节我们就从数据入手,学习在不同Intent间传递数据的对象 —— Bundle 。
首先我们回顾一下Activity与Intent,为更好地理解Bundle做准备。
众所周知,Android应用结构是由一下四个部分组成:(并不是说每一个Android应用里都包含所有内容
)
Activity
Intent Receiver
Service
Content Provider
Activity是Android应用中最基本的组成部分,往文了说就是“每个activity都被实现为一个独立的类,并且继承于Activity这个基类。这个activity类会由若干个Widgets控件组成”。往俗了说“activity就是Android应用中的一个单独窗口屏幕”。
上例中引出了“Intent”这一概念,说的是Intent用于Activity间的数据交换。其实在Intent的结构描述中主要包含两部分:动作和动作所对应的数据。关于Intent的动作行为和请求会牵扯出另外一个概念“IntentFilter”,所以在本例中暂不细说。就记住
Intent是连接Android应用间的桥梁就行,因为Intent的本事很大很大 :-)
而对于Bundle,我理解它就是一个"数据封装的容器",而Intent就是这个数据容器的应用载体。
有了这些理论依据,我们再来看程序代码,无非就是"放数据"和"取数据"的关系。
代码中的putData()与getData()泛指放数据和取数据。真实应用要根据不同数据类型来分别对待。
Bundle中支持的数据类型还是很丰富的,除常用数据类型以外(int,float,double...),还有针对Bitmap的读取getParcelable与写入
putParcelable等等。
首先我们回顾一下Activity与Intent,为更好地理解Bundle做准备。
众所周知,Android应用结构是由一下四个部分组成:(并不是说每一个Android应用里都包含所有内容
)
Activity
Intent Receiver
Service
Content Provider
Activity是Android应用中最基本的组成部分,往文了说就是“每个activity都被实现为一个独立的类,并且继承于Activity这个基类。这个activity类会由若干个Widgets控件组成”。往俗了说“activity就是Android应用中的一个单独窗口屏幕”。
上例中引出了“Intent”这一概念,说的是Intent用于Activity间的数据交换。其实在Intent的结构描述中主要包含两部分:动作和动作所对应的数据。关于Intent的动作行为和请求会牵扯出另外一个概念“IntentFilter”,所以在本例中暂不细说。就记住
Intent是连接Android应用间的桥梁就行,因为Intent的本事很大很大 :-)
而对于Bundle,我理解它就是一个"数据封装的容器",而Intent就是这个数据容器的应用载体。
有了这些理论依据,我们再来看程序代码,无非就是"放数据"和"取数据"的关系。
//第一步 创建Intent对象,指定Class Intent intent = new Intent(); intent.setClass(); //第二步 创建Bundle对象, 放/压 数据 Bundle bundle = new Bundle(); bundle.putData(XXXXXXX); //第三步 将Bundle对象分发给Intent, 调用Activity intent.putExtras(bundle); startActivity(intent);
//取数据 //获取Intent中的Bundle对象 bunde = this.getIntent().getExtras(); bunde.getData();
代码中的putData()与getData()泛指放数据和取数据。真实应用要根据不同数据类型来分别对待。
Bundle中支持的数据类型还是很丰富的,除常用数据类型以外(int,float,double...),还有针对Bitmap的读取getParcelable与写入
putParcelable等等。
相关文章推荐
- 不同Activity之间的数据传递---Bundle对象的实现
- 不同Activity之间传递数据--Bundle对象和startActivityForResult方法的实现
- Android判断网络状态是否断开+Android完全关闭应用程序+ 本文讲述了Android中不同Activity之间的数据传递 — Bundle对象的实现(-)+Android中Bundle的使用示例
- 不同Activity之间传递数据--Bundle对象和startActivityForResult方法的实现
- Bundle对象实现不同Activity之间数据传递
- 不同Activity之间的数据传递--Bundle对象的实现
- Android笔记三.不同Activity之间的传递数据(Bundle对象的使用)
- Android中级教程(三)之不同Activity之间的数据传递---Bundle对象的使用!
- Android中级教程(三)之不同Activity之间的数据传递---Bundle对象的使用!
- [读书摘记]不同Activity之间的数据传递--Bundle对像的实现
- Android中级教程(三)之不同Activity之间的数据传递---Bundle对象的使用!
- Android中级教程(三)之不同Activity之间的数据传递---Bundle对象的使用!
- Android中级教程之(五)----->不同Activity之间的数据传递,Bundle对象的使用!
- 【Android中级教程(三)之不同Activity之间的数据传递---Bundle对象的使用】的改进!
- Bundle在不同的Activity之间传递数据!
- Android成长之路-关于bundle实现两个activity之间的数据传递
- Android成长之路-关于bundle实现两个activity之间的数据传递
- 【Android】利用Bundle在不同Activity之间传递数据
- Activity之间数据传递(一)(简单传递,数据包Bundle,传递对象)
- Activity之间数据传递(一)(简单传递,数据包Bundle,传递对象)