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. gdb 多线程调试

    gdb 多线程调试 http://hi.baidu.com/hcq11/blog/item/9f5bfc6e696209d680cb4a25.html  http://hi.baidu.com/lit ...

  2. Lex和Yacc入门

     Lex和Yacc入门 标签: lexyacc 2013-07-21 23:02 584人阅读 评论(0) 收藏 举报  分类: Linux(132)  原文地址:http://coanor.blog ...

  3. Flume-NG之KafkaChannel

    apache下一个版本(1.6)将会带来一个新的组件KafKaChannel,顾名思义就是使用kafka做channel,当然在CDH5.3版本已经存在这个channel. 大伙知道,常用的chann ...

  4. Entity Framework 自动生成CodeFirst代码

    前言 在前面的文章中我们提到Entity Framework的“Code First”模式也同样可以基于现有数据库进行开发.今天就让我们一起看一下使用Entity Framework Power To ...

  5. 简单聊下IO复用

    没图,不分析API Java中IO API的发展:Socket -> SocketChannel -> AsynchronousSocketChannelServerSocket -> ...

  6. SQL Server2008ldf文件太大

    --适用于SQL Server 2008的方法 USE [master] GO ALTER DATABASE RmyyHisDW SET RECOVERY SIMPLE WITH NO_WAIT GO ...

  7. 微信发明人竟是他!也是WeChat/Line/WhatsApp的发明者

    赵建文,很多人不知道他是谁:说到微信大家都耳熟能详吧?没错,他就是初始微信发明人,同时也是WeChat/Line/WhatsApp的发明者!正是他的专利<一种基于或囊括手机电话本的即时通讯方法和 ...

  8. QEMU-KVM中的多线程压缩迁移技术

    导读 目前的迁移技术,都是通过向QEMUFILE中直接写入裸内存数据来达到传送虚拟机的目的端,这种情况下,发送的数据量大,从而会导致更高的迁移时间(total time)和黑宕时间(downtime) ...

  9. 《ASP.NET1200例》实现投票的用户控件

    用户控件ascx <%@ Control Language="C#" AutoEventWireup="true" CodeBehind="24 ...

  10. STM32canopen调试

    问题1:用usbcan监测不到can口的报文 属于接线问题 CANopen程序总使用的是can1 对应的接下口在J1的1和2口,而其接口排序是从外向里排序,故最外面的为1号接口,由于接线时,按照左边的 ...