1. 基本数据类型

Intent intent = new Intent();
intent.setClass(activity1.this, activity2.class); //描述起点和目标
Bundle bundle = new Bundle(); //创建Bundle对象
bundle.putString("key", "包装的数据"); //装入数据
intent.putExtras(bundle); //把Bundle塞入Intent里面
startActivity(intent);

2. 传对象的两种方式 java.io.Serializable和android.os.Parcelable
1. android.os.Parcelable(android推荐使用)
1).被传递的类对象需要实现parcelable接口

public class Employee implements Parcelable{
public String id;
public String name;
public String dept;
public String idcard;
public String statusInt;
public String status;
public String mobile;
public String sex;
public String sexInt;
public String address;
public String avatar;
public String education;
public String birthday;
public String age;
public String dept_name;
public String imageUrl;
public String manager;
public String score; public static final Parcelable.Creator<Employee> CREATOR = new Creator<Employee>() {
public Employee createFromParcel(Parcel source) {
Employee employee = new Employee();
employee.name = source.readString();
employee.age = source.readString();
employee.dept_name = source.readString();
employee.sex = source.readString();
employee.status = source.readString();
employee.manager = source.readString();
employee.score = source.readString();
employee.imageUrl = source.readString();
return employee;
}
public Employee[] newArray(int size) {
return new Employee[size];
}
}; @Override
public int describeContents() {
// TODO Auto-generated method stub
return 0;
}
@Override
public void writeToParcel(Parcel parcel, int arg1) {
parcel.writeString(name);
parcel.writeString(age);
parcel.writeString(dept_name);
parcel.writeString(sex);
parcel.writeString(status);
parcel.writeString(manager);
parcel.writeString(score);
parcel.writeString(imageUrl);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
} }

2)传递对象代码

Intent intent = new Intent(mContext, AnotherActivity.class);
Bundle mEmployeeBundle = new Bundle();
mEmployeeBundle.putParcelable(EMPLOYEE_PAR_KEY, mEmployees.get(position));
intent.putExtras(mEmployeeBundle);
startActivity(intent);

3) AnotherActivity中取值

mEmployee = (Employee)getIntent().getExtras().getParcelable(HomeFragment.EMPLOYEE_PAR_KEY);
Log.d(TAG, "employee name :"+mEmployee.name);

2. java.io.Serializable

1)类对象

public class Ser implements Serializable {

    /**
* serialVersionUID的作用是在修改实体类后,可以正常的序列化和反序列化,在此不多说,大家可以谷歌百度下。
*/
private static final long serialVersionUID = 123456789090L;
private String name;
private int age;
}

2)传值及取值

bundle.putSerializable(SER_KEY, new Ser());
intent.putExtras(bundle);
startActivity(intent);
pSer = (Ser) getIntent().getSerializableExtra(SER_KEY); //another activity 取值 

最新文章

  1. 2.C语言中的关键字
  2. /etc/ethers【地址映射】
  3. 日志分析_统计每日各时段的的PV,UV
  4. jQuery和Ajax的使用(杂记)
  5. google打不开啦,咋办?
  6. 数组排序-冒泡排序-选择排序-插入排序-希尔排序-快速排序-Java实现
  7. acdream 1738 世风日下的哗啦啦族I
  8. 使用Java正则表达式的分组解析身份证的年月日
  9. winform windowsmediaplayer的属性
  10. H5个性三级联动日期插件(一)
  11. TypeScript入门(一)
  12. 仿 ELEMENTUI 实现一个简单的 Form 表单
  13. 小型互联网公司的IT系统建设思路
  14. Apache RocketMQ在linux上的常用命令
  15. 在服务器上搭建wordpress个人博客 php7.2+nginx+mysql+wordperss
  16. ubuntu下修改网卡名称
  17. 分布式监控系统Zabbix-3.0.3-完整安装记录 - 添加shell脚本监控
  18. SVN 错误:Error validating server certificate for &#39;https://xxxxxxx&#39;:443... Mac os svn客户端证书验证缓存 解决
  19. LVS+NGINX+TOMCAT_集群实施操作记录.docx
  20. 让cxGrid像Excel那样高亮显示选区的行号列标

热门文章

  1. [CF551E]GukiZ and GukiZiana
  2. bzoj 1877: [SDOI2009]晨跑 (网络流)
  3. BZOJ2653:middle——题解
  4. BZOJ2006 [NOI2010]超级钢琴 【堆 + RMQ】
  5. AOJ.综合训练.2016-12-1
  6. ES6装饰器Decorator基本用法
  7. 注册google账号时出现手机号的问题
  8. FreeRTOS 问题归纳
  9. mysql 联合索引匹配原则
  10. poj 2541 Binary Witch