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 取值 

android intent 传数据的更多相关文章

  1. android中用Intent传数据,如果用传递的是一个类,就将类实现Parcelable接口

    Parcelable,内存单位,跨进程使用,或者intent传递对象的时候使用.android中用Intent传数据,如果用传递的是一个对象,就将对象实现Parcelable接口,而不是将对象序列化. ...

  2. 关于 android Intent 传对象和对象数组的一些操作

    直接开正题,Intent传递值就是平常那些很简单的,接下来介绍传递 对象,和 对象数组 1 .intent 传递自定义的 对象 - 实体类继承  Serializable public class A ...

  3. Android Intent传递数据

    刚开始看郭大神的<>,实现以下里面的一些例子.Intent传递数据. 我们利用显示的方式进行Intent的启动. 1.启动intent并输入数据. Intent intent=new In ...

  4. Intent 传数据

    Intent作为android重要的组件其重要性不言而喻,这里说说他是怎么传递简单数据和对象 Intent的具体概念就不讲解了!网上有很多的 传递简单的数据(例如String,float等) 传递对象 ...

  5. Android Intent 传递数据注意事项

    不要通过 Intent 在 Android 基础组件之间传递大数据(binder transaction缓存为 1MB),可能导致 OOM.

  6. Android:Intent传递数据的几种类型和源码实现

    public class Intent implements Parcelable, Cloneable {   //... private String mAction; private Uri m ...

  7. 【转】Android 之最新最全的Intent传递数据方法

    原文地址:https://www.jianshu.com/p/1169dba99261 intent传递数据 为什么要和intent单独拿出来讲,因为Intent传递数据也是非常重要的 一.简单的传递 ...

  8. Android开发探秘之四:利用Intent实现数据传递

    在Android开发过程中,很多人都熟悉Intent,这是个用于在多个View之间共享数据的类.本节主要是继承上节,通过点选ListView中的文本,把文本中的URL加载到一个新的页面上,并且打印出来 ...

  9. Android 消息广播Intent传递数据

    1.创建布局文件activity_broadcast.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk ...

随机推荐

  1. bzoj 1207: [HNOI2004]打鼹鼠 (dp)

    var n,m,i,j,ans:longint; x,y,time,f:..]of longint; begin readln(n,m); to m do readln(time[i],x[i],y[ ...

  2. BZOJ1901:Zju2112 Dynamic Rankings——题解

    http://www.lydsy.com/JudgeOnline/problem.php?id=1901 Description 给定一个含有n个数的序列a[1],a[2],a[3]……a[n],程序 ...

  3. BZOJ1412 [ZJOI2009]狼和羊的故事 【最小割】

    1412: [ZJOI2009]狼和羊的故事 Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 3454  Solved: 1733 [Submit][ ...

  4. UVA.548 Tree(二叉树 DFS)

    UVA.548 Tree(二叉树 DFS) 题意分析 给出一棵树的中序遍历和后序遍历,从所有叶子节点中找到一个使得其到根节点的权值最小.若有多个,输出叶子节点本身权值小的那个节点. 先递归建树,然后D ...

  5. ContestHunter暑假欢乐赛 SRM 01 - 儿童节常数赛 爆陵记

    最后15min过了两题...MDZZ 果然是不适合OI赛制啊...半场写完三题还自信满满的,还好有CZL报哪题错了嘿嘿嘿(这算不算犯规了(逃 悲惨的故事*1....如果没有CZL的话T1 10分 悲惨 ...

  6. 【树状数组】【P2345】 奶牛集会

    传送门 Description 约翰的\(N\)头奶牛每年都会参加"哞哞大会".哞哞大会是奶牛界的盛事.集会上的活动很多,比如堆干草,跨栅栏,摸牛仔的屁股等等.它们参加活动时会聚在 ...

  7. 第九章 C99可变长数组VLA详解

    C90及C++的数组对象定义是静态联编的,在编译期就必须给定对象的完整信息.但在程序设计过程中,我们常常遇到需要根据上下文环境来定义数组的情况,在运行期才能确知数组的长度.对于这种情况,C90及C++ ...

  8. Codeforces Round #333 (Div. 2) B

    B. Approximating a Constant Range time limit per test 2 seconds memory limit per test 256 megabytes ...

  9. HDU3068:最长回文(Manacher模板)

    最长回文 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  10. JQuery学习三(隐式迭代和节点遍历)

    在JQuery中根据id获取控件,如果输入id错误是不报错的. 必要时可以通过写判断语句进行判断是否id写错 <!DOCTYPE html> <html xmlns="ht ...