Activity使用Serializable传递对象实例
- public class SerializableBook implements Serializable {
- private static final long serialVersionUID = 4226755799531293257L;
- private String Name;
- private String Author;
- private String Pubdate;
- private float Price;
- public void setName(String name) {
- Name = name;
- }
- public String getName() {
- return Name;
- }
- public void setAuthor(String author) {
- Author = author;
- }
- public String getAuthor() {
- return Author;
- }
- public void setPubdate(String pubdate) {
- Pubdate = pubdate;
- }
- public String getPubdate() {
- return Pubdate;
- }
- public void setPrice(float price) {
- Price = price;
- }
- public float getPrice() {
- return Price;
- }
- }
然后起一个Activity A,这都是和之前的Activity介绍的例子一样,代码如下:
- public class ActivityA extends Activity {
- private String SerializableKey = "ourunix_serialzable";
- private Button mButton;
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.layout_for_a);
- initView();
- mButton.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View v) {
- // TODO Auto-generated method stub
- tranSerializableObject();
- }
- });
- }
- public void initView(){
- mButton = (Button) findViewById(R.id.a_button);
- mButton.setText("A跳B");
- }
- public void tranSerializableObject(){
- Intent in = new Intent();
- in.setClass(ActivityA.this, ActivityB.class);
- //实例化一个SerializableBook对象
- SerializableBook book = new SerializableBook();
- book.setAuthor("walfred");
- book.setName("How to learn Android");
- book.setPrice(10.00f);
- book.setPubdate("2014-01-01");
- Bundle extras = new Bundle();
- extras.putSerializable(SerializableKey, book);
- in.putExtras(extras);
- startActivity(in);
- }
- }
最后在Activity B中接受这个对象,并展示出来,代码如下:
- public class ActivityB extends Activity {
- private String SerializableKey = "ourunix_serialzable";
- private TextView mTextView;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- // TODO Auto-generated method stub
- super.onCreate(savedInstanceState);
- setContentView(R.layout.layout_for_b);
- initView();
- getAndShowSerialzableObeject();
- }
- public void initView(){
- mTextView = (TextView)findViewById(R.id.b_textview);
- }
- public void getAndShowSerialzableObeject(){
- Bundle extras = getIntent().getExtras();
- if (extras != null){
- SerializableBook book = (SerializableBook) extras.get(SerializableKey);
- mTextView.setText("Name:" + book.getName()+"\n"
- + "Author:" + book.getAuthor() + "\n"
- + "Pubdate:" + book.getPubdate() + "\n"
- + "Price:" + book.getPrice());
- }else{
- mTextView.setText("nothing");
- }
- }
- }
Activity使用Serializable传递对象实例的更多相关文章
- intent使用Serializable传递对象
package com.pingyijinren.test; import android.content.Intent; import android.support.v7.app.AppCompa ...
- 【转】Android中如何使用Bundle传递对象[使用Serializable或者Parcelable] -- 不错
原文网址:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2012/1211/694.html Android中Bundle类的作用 Bun ...
- 在Android中通过Intent使用Bundle传递对象
IntentBundle传递对象SerializableParcelable Android开发中有时需要在应用中或进程间传递对象,下面详细介绍Intent使用Bundle传递对象的方法.被传递的对象 ...
- Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]
http://blog.csdn.net/cjjky/article/details/6441104 在Android中的不同Activity之间传递对象,我们可以考虑采用Bundle.putSeri ...
- [Android学习]Activity之间传递对象和对象集合
开发过程中,Activity之间传递数据是必不可少的,android中使用Intent和Bundle作为数据载体,在Activity之间传递,对于基础数据类型,Bundle已经提供相关的put,get ...
- Intent传递对象的两种方法(Serializable,Parcelable) (转)
今天讲一下Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putParcela ...
- Android中Intent传递对象的两种方法(Serializable,Parcelable)
今天要给大家讲一下Android中 Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是 Bundle.putP ...
- 利用Bundle在activity之间传递对象
(2010-12-04 09:45:54) 转载▼ 标签: it 分类: android开发 转自:http://chen592969029.javaeye.com/blog/772656 假如需要在 ...
- Intent传递对象——Serializable和Parcelable区别
为什么要将对象序列化? 1.永久性保存对象,保存对象的字节序列到本地文件中: 2.用过序列化对象在网络中传递对象: 3.通过序列化对象在进程间传递对象. 1.实现Serializable接口 Seri ...
随机推荐
- update操作多张表
sql 语句多张表UPDATE用法一.当用一个表中的数据来更新另一个表中的数据,T-SQL提供多种写法(下面列出了二种),但建议用第一种写法,虽然传统,但结构清晰.飞.飞Asp技术乐园并且要注意,当用 ...
- POJ 1260 Pearls
Pearls Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 6670 Accepted: 3248 Description In ...
- 黑色30s高并发IIS设置
在这篇博文中,我们抛开对阿里云的怀疑,完全从ASP.NET的角度进行分析,看能不能找到针对问题现象的更合理的解释. “黑色30秒”问题现象的主要特征是:排队的请求(Requests Queued)突增 ...
- MBProgressHUD使用
//方式1.直接在View上show HUD = [[MBProgressHUD showHUDAddedTo:self.view animated:YES] retain]; HUD.delegat ...
- cocos2d调度器(定时执行某函数)
调度器(scheduler) 继承关系 原理介绍 Cocos2d-x调度器为游戏提供定时事件和定时调用服务.所有Node对象都知道如何调度和取消调度事件,使用调度器有几个好处: 每当Node不再可见或 ...
- [BZOJ1529][POI2005]ska Piggy banks
[BZOJ1529][POI2005]ska Piggy banks 试题描述 Byteazar 有 N 个小猪存钱罐. 每个存钱罐只能用钥匙打开或者砸开. Byteazar 已经把每个存钱罐的钥匙放 ...
- HDU 1285 拓普排序 基本模板例题 确定比赛名次
确定比赛名次 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Subm ...
- Android创建桌面快捷图标
<!-- 添加快捷方式 --> <uses-permission android:name="com.android.launcher.permission.INSTALL ...
- HTML5 manifest离线缓存
一.基本概念 离线缓存是HTML5新引入的技术,能够让你的Web应用程序指定哪些文件可以缓存在本地,使得你的网络断开时依然可以通过本地的缓存来进行访问浏览. 二.使用方法 1. MIME type 声 ...
- c++关键字之#define typedef const
[#define] #define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查. [typedef] typedef只是为了增加可读性而为标识符另起的新名称 在自己的作用域内给一个已经存 ...