在Android中,使用intent的putExtra()方法是没有办法传递实例的,但是我们很多情况下都需要传递实例过去,这样子会更加方便一点。接下里,我就说一下怎么使用putExtra()方法来进行实例的传递。
首先创建一个类:

package com.zkteco.petsystem;import java.io.Serializable;/** * Created by Administrator on 2017/9/5 0005. */public class ItemInfo implements Serializable{    private String name;    private int attack;    private int life;    private int speed;    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public int getAttack() {        return attack;    }    public void setAttack(int attack) {        this.attack = attack;    }    public int getLife() {        return life;    }    public void setLife(int life) {        this.life = life;    }    public int getSpeed() {        return speed;    }    public void setSpeed(int speed) {        this.speed = speed;    }    public ItemInfo(String name, int attack, int life, int speed) {        this.name = name;        this.attack = attack;        this.life = life;        this.speed = speed;    }    public ItemInfo(){    }}

一定要注意,

这个类要实现Serializable接口

,这是很关键的一步。

然后在传递的时候,使用putExtra()方法进行传递,详情见以下代码

                Intent intent = new Intent();                intent.putExtra("itemInfo",itemInfo);                setResult(1,intent);                finish();

finish()方法用于结束销毁掉当前activity。
在接受数据的页面,使用getSerializableExtra()方法获取传递的值,要注意类型的强制转换。

ItemInfo itemInfo= (ItemInfo) data.getSerializableExtra("itemInfo");

更多相关文章

  1. Android编译本地C++程序方法
  2. Android开发者网站打不开的解决方法
  3. android sdk manager 无法更新解决方法
  4. Android下app生成coredump方法
  5. Android使用webview调用js方法传参,参数无法传入的问题
  6. android创建aidl小实例
  7. Android 需要使用不同实例的情况
  8. Android中bindService基本使用方法概述

随机推荐

  1. android编辑单个工程
  2. android 焦点问题
  3. 如何让Android中的 Base64工具类支持2.2
  4. EditText
  5. android 如何在状态栏上增加一个icon
  6. Android的ADT的安装
  7. android 测试简介
  8. Android单元测试详解(以公司产品demo为案
  9. Android中Dialog的使用
  10. android 中edittext设置不弹出软键盘