1. public class SerializableBook implements Serializable {
  2. private static final long serialVersionUID = 4226755799531293257L;
  3. private String Name;
  4. private String Author;
  5. private String Pubdate;
  6. private float Price;
  7. public void setName(String name) {
  8. Name = name;
  9. }
  10. public String getName() {
  11. return Name;
  12. }
  13. public void setAuthor(String author) {
  14. Author = author;
  15. }
  16. public String getAuthor() {
  17. return Author;
  18. }
  19. public void setPubdate(String pubdate) {
  20. Pubdate = pubdate;
  21. }
  22. public String getPubdate() {
  23. return Pubdate;
  24. }
  25. public void setPrice(float price) {
  26. Price = price;
  27. }
  28. public float getPrice() {
  29. return Price;
  30. }
  31. }

然后起一个Activity A,这都是和之前的Activity介绍的例子一样,代码如下:

Java代码
  1. public class ActivityA extends Activity {
  2. private String SerializableKey = "ourunix_serialzable";
  3. private Button mButton;
  4. @Override
  5. public void onCreate(Bundle savedInstanceState) {
  6. super.onCreate(savedInstanceState);
  7. setContentView(R.layout.layout_for_a);
  8. initView();
  9. mButton.setOnClickListener(new OnClickListener() {
  10. @Override
  11. public void onClick(View v) {
  12. // TODO Auto-generated method stub
  13. tranSerializableObject();
  14. }
  15. });
  16. }
  17. public void initView(){
  18. mButton = (Button) findViewById(R.id.a_button);
  19. mButton.setText("A跳B");
  20. }
  21. public void tranSerializableObject(){
  22. Intent in = new Intent();
  23. in.setClass(ActivityA.this, ActivityB.class);
  24. //实例化一个SerializableBook对象
  25. SerializableBook book = new SerializableBook();
  26. book.setAuthor("walfred");
  27. book.setName("How to learn Android");
  28. book.setPrice(10.00f);
  29. book.setPubdate("2014-01-01");
  30. Bundle extras = new Bundle();
  31. extras.putSerializable(SerializableKey, book);
  32. in.putExtras(extras);
  33. startActivity(in);
  34. }
  35. }

最后在Activity B中接受这个对象,并展示出来,代码如下:

Java代码
  1. public class ActivityB extends Activity {
  2. private String SerializableKey = "ourunix_serialzable";
  3. private TextView mTextView;
  4. @Override
  5. protected void onCreate(Bundle savedInstanceState) {
  6. // TODO Auto-generated method stub
  7. super.onCreate(savedInstanceState);
  8. setContentView(R.layout.layout_for_b);
  9. initView();
  10. getAndShowSerialzableObeject();
  11. }
  12. public void initView(){
  13. mTextView = (TextView)findViewById(R.id.b_textview);
  14. }
  15. public void getAndShowSerialzableObeject(){
  16. Bundle extras = getIntent().getExtras();
  17. if (extras != null){
  18. SerializableBook book = (SerializableBook) extras.get(SerializableKey);
  19. mTextView.setText("Name:" + book.getName()+"\n"
  20. + "Author:" + book.getAuthor() + "\n"
  21. + "Pubdate:" + book.getPubdate() + "\n"
  22. + "Price:" + book.getPrice());
  23. }else{
  24. mTextView.setText("nothing");
  25. }
  26. }
  27. }

Activity使用Serializable传递对象实例的更多相关文章

  1. intent使用Serializable传递对象

    package com.pingyijinren.test; import android.content.Intent; import android.support.v7.app.AppCompa ...

  2. 【转】Android中如何使用Bundle传递对象[使用Serializable或者Parcelable] -- 不错

    原文网址:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2012/1211/694.html Android中Bundle类的作用 Bun ...

  3. 在Android中通过Intent使用Bundle传递对象

    IntentBundle传递对象SerializableParcelable Android开发中有时需要在应用中或进程间传递对象,下面详细介绍Intent使用Bundle传递对象的方法.被传递的对象 ...

  4. Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]

    http://blog.csdn.net/cjjky/article/details/6441104 在Android中的不同Activity之间传递对象,我们可以考虑采用Bundle.putSeri ...

  5. [Android学习]Activity之间传递对象和对象集合

    开发过程中,Activity之间传递数据是必不可少的,android中使用Intent和Bundle作为数据载体,在Activity之间传递,对于基础数据类型,Bundle已经提供相关的put,get ...

  6. Intent传递对象的两种方法(Serializable,Parcelable) (转)

    今天讲一下Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putParcela ...

  7. Android中Intent传递对象的两种方法(Serializable,Parcelable)

    今天要给大家讲一下Android中 Intent中如何传递对象,就我目前所知道的有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是 Bundle.putP ...

  8. 利用Bundle在activity之间传递对象

    (2010-12-04 09:45:54) 转载▼ 标签: it 分类: android开发 转自:http://chen592969029.javaeye.com/blog/772656 假如需要在 ...

  9. Intent传递对象——Serializable和Parcelable区别

    为什么要将对象序列化? 1.永久性保存对象,保存对象的字节序列到本地文件中: 2.用过序列化对象在网络中传递对象: 3.通过序列化对象在进程间传递对象. 1.实现Serializable接口 Seri ...

随机推荐

  1. malloc 函数到底做了什么?

    请看下面的代码. 猜测结果是什么?编译通过吗? #include <stdio.h> #include <stdlib.h> int main() { ; char *ptr ...

  2. [转] Android开发者必备的42个链接

    下面收集了42个帮助大家学习Android的内容链接,部分内容是面向初学者的,帮助大家从头开始学习Android开发,其他则面向较高级的开发者.希望推荐的这些内容对你有帮助. 官方网站 1.谷歌And ...

  3. matlab之waitbar() delete() close()

    matlab之waitbar() delete() close() 三者之间的关系: 在显示某个程序的进度时,用waitbar函数显示进度条,当程序进行完毕时,用close 或 delete函数关闭此 ...

  4. 微信和WeChat的合并月活跃账户达6.97亿

    腾讯最新财报显示,微信和WeChat的合并月活跃账户于2015年底达6.97亿,同比增长39%.2016年初春节假期期间,通过微信支付收发的红包数量仅在6天内就超过320亿,同比增长9倍. 腾讯网络广 ...

  5. 测试Swift语言代码高亮-使用highlight.js

    func &( left:OCBool, right: OCBool)->OCBool{ if left{ return right } else{ return false } }

  6. 基本二叉搜索树的第K小元素

    #include<stdio.h> #include<stdlib.h> typedef struct node *btlink; struct node { int data ...

  7. bash read命令用法

    read -p "Enter your student ID: " USERNAMEread -s -p "Enter your password: " PAS ...

  8. 回调函数callback

    你到一个商店买东西,刚好你要的东西没有货,于是你在店员那里留下了你的电话,过了几天店里有货了,店员就打了你的电话,然后你接到电话后就到店里去取了货.在这个例子里,你的电话号码就叫回调函数,你把电话留给 ...

  9. 57. 数对之差的最大值:4种方法详解与总结[maximum difference of array]

    [本文链接] http://www.cnblogs.com/hellogiser/p/maximum-difference-of-array.html [题目] 在数组中,数字减去它右边的数字得到一个 ...

  10. swift 中delegate的使用

    今天写了delegate,遇到以下问题: 这里protocol的写法有问题,如果delegate指向一个实现了某个协议对象的引用,在oc里是这样写delegate的类型 id<protocol& ...