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 ...
随机推荐
- malloc 函数到底做了什么?
请看下面的代码. 猜测结果是什么?编译通过吗? #include <stdio.h> #include <stdlib.h> int main() { ; char *ptr ...
- [转] Android开发者必备的42个链接
下面收集了42个帮助大家学习Android的内容链接,部分内容是面向初学者的,帮助大家从头开始学习Android开发,其他则面向较高级的开发者.希望推荐的这些内容对你有帮助. 官方网站 1.谷歌And ...
- matlab之waitbar() delete() close()
matlab之waitbar() delete() close() 三者之间的关系: 在显示某个程序的进度时,用waitbar函数显示进度条,当程序进行完毕时,用close 或 delete函数关闭此 ...
- 微信和WeChat的合并月活跃账户达6.97亿
腾讯最新财报显示,微信和WeChat的合并月活跃账户于2015年底达6.97亿,同比增长39%.2016年初春节假期期间,通过微信支付收发的红包数量仅在6天内就超过320亿,同比增长9倍. 腾讯网络广 ...
- 测试Swift语言代码高亮-使用highlight.js
func &( left:OCBool, right: OCBool)->OCBool{ if left{ return right } else{ return false } }
- 基本二叉搜索树的第K小元素
#include<stdio.h> #include<stdlib.h> typedef struct node *btlink; struct node { int data ...
- bash read命令用法
read -p "Enter your student ID: " USERNAMEread -s -p "Enter your password: " PAS ...
- 回调函数callback
你到一个商店买东西,刚好你要的东西没有货,于是你在店员那里留下了你的电话,过了几天店里有货了,店员就打了你的电话,然后你接到电话后就到店里去取了货.在这个例子里,你的电话号码就叫回调函数,你把电话留给 ...
- 57. 数对之差的最大值:4种方法详解与总结[maximum difference of array]
[本文链接] http://www.cnblogs.com/hellogiser/p/maximum-difference-of-array.html [题目] 在数组中,数字减去它右边的数字得到一个 ...
- swift 中delegate的使用
今天写了delegate,遇到以下问题: 这里protocol的写法有问题,如果delegate指向一个实现了某个协议对象的引用,在oc里是这样写delegate的类型 id<protocol& ...