intent传值传对象跳转
intent传值传对象跳转
1.传值
//原activity中存入一个字段
intent = new Intent(From.this, To.class);
intent.putExtra("switch", "chongzhi");
startActivity(intent);
//跳转至新的activity中后q取出该字段
Intent switchIntent = getIntent();
String myswitch = switchIntent.getStringExtra("switch");
2.传对象
intent = dialogInfo.getIntent();
/往Intent对象中传入一个对象
UserInfo 需实现Parcelable接口 创建creator
//存到一个Bundle 中
Bundle myBundle = new Bundle();
myBundle.putParcelable("userInfo", userInfo);
intent.putExtras(myBundle);
//在新的 Toactivity中取对象
Intent getIntent = getIntent();
UserInfo userInfo=(UserInfo)(getIntent.getParcelableExtra("userInfo"));
详情见http://caiwb1990.iteye.com/blog/1404201
3.附实现Parcelable的接口类 也就是序列化该对象
package com.example.entity;
import android.os.Parcel;
import android.os.Parcelable;
import android.os.Parcelable.Creator;
public class UserInfo implements Parcelable{
private int id;
private String username;
private String password;
private String phoneNum;
private double money;
@Override
public int describeContents() {
// TODO Auto-generated method stub
return 0;
}
@Override
public void writeToParcel(Parcel dest, int arg1) {
// TODO Auto-generated method stub
dest.writeString(username);
dest.writeString(password);
dest.writeString(phoneNum);
dest.writeDouble(money);
}
public static final Creator<UserInfo> CREATOR = new Creator<UserInfo>() {
@Override
public UserInfo createFromParcel(Parcel source) {
UserInfo entity = new UserInfo();
// 顺序需和写入顺序一样
entity.username= source.readString();
entity.password = source.readString();
entity.phoneNum = source.readString();
entity.money = source.readDouble();
return entity ;
}
@Override
public UserInfo[] newArray(int arg0) {
// TODO Auto-generated method stub
return null;
}
};
}
intent传值传对象跳转的更多相关文章
- uniapp uni.navigateTo 传值传对象
uni.navigateTo({ url: '/pages/details?obj='+ encodeURIComponent(JSON.stringify(item)) }); 接收: onLoad ...
- intent传对象
intent还有一个很好用的地方,就是传输对象,但要注意的是这里的传输只是将对象复制了一份通过intent进行传递,并不能达到实时更新的效果,也就是这个对象等偏重于“读”.intent对这个对象有着严 ...
- Android 通过 Intent 传递类对象或list对象
(转:http://www.cnblogs.com/shaocm/archive/2013/01/08/2851248.html) Android中Intent传递类对象提供了两种方式一种是 通过实现 ...
- Intent之前的对象传递与fragment传递数据
Android中Intent传递类对象提供了两种方式一种是 通过实现Serializable接口传递对象,一种是通过实现Parcelable接口传递对象. 要求被传递的对象必须实现上述2种接口中的一种 ...
- Android 通过 Intent 传递类对象
Android中Intent传递类对象提供了两种方式一种是 通过实现Serializable接口传递对象,一种是通过实现Parcelable接口传递对象. 要求被传递的对象必须实现上述2种接口中的一种 ...
- Android 开发笔记——通过 Intent 传递类对象
Android中Intent传递类对象提供了两种方式一种是 通过实现Serializable接口传递对象,一种是通过实现Parcelable接口传递对象. 要求被传递的对象必须实现上述2种接口中的一种 ...
- android通过 Intent 传递类对象
Android中Intent传递类对象提供了两种方式一种是 通过实现Serializable接口传递对象,一种是通过实现Parcelable接口传递对象. 要求被传递的对象必须实现上述2种接口中的一种 ...
- android中用Intent传数据,如果用传递的是一个类,就将类实现Parcelable接口
Parcelable,内存单位,跨进程使用,或者intent传递对象的时候使用.android中用Intent传数据,如果用传递的是一个对象,就将对象实现Parcelable接口,而不是将对象序列化. ...
- intent 传参数
一.传递List<String>和List<Integer>以下以传递List<String>为例,发送List<String>语法为:intent.p ...
随机推荐
- C++ bitset类的使用与简介
有些程序要处理二进制位的有序集,每个位可能包含的是0(关)或1(开)的值.位是用来保存一组项或条件的yes/no信息(有时也称标志)的简洁方法.标准库提供了bitset类使得处理位集合更容易一些.要使 ...
- 习题:八数码难题(双向BFS)
八数码难题(wikioi1225) [题目描述] 在3×3的棋盘上,摆有八个棋子,每个棋子上标有1至8的某一数字.棋盘中留有一个空格,空格用0来表示.空格周围的棋子可以移到空格中.要求解的问题是:给出 ...
- HDU 2795 线段树区间最大值,单点更新+二分
Billboard Time Limit: 20000/8000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- MFC 禁用输入法
#include <Imm.h> HIMC m_hImc; // 全局或者成员变量 // Function for Disabling IME void CMyDialog::Disabl ...
- Java EE 学习:使用 idea2017 搭建 SSM 框架
需要准备的环境: idea 2017.1 jdk1.8 Maven 3.3.9 请提前将idea与Maven.jdk配置好,本次项目用的都是比较新的 步骤: 一.首先使用idea新建一个Maven w ...
- java网络编程学习笔记(三):ServerSocket详解
1.ServerSocket的构造方法 ServerSocket(); ServerSocket(int port); ServerSocket(int port,int backlog); Serv ...
- The C programming language [book]
1 A12.3 Macro Definition and Expansion A control line of the form #define identifier token-sequence ...
- Spring Boot学习——AOP编程的简单实现
首先应该明白一点,AOP是一种编程范式,是一种程序设计思想,与具体的计算机编程语言无关,所以不止是Java,像.Net等其他编程语言也有AOP的实现方式.AOP的思想理念就是将通用逻辑从业务逻辑中分离 ...
- git使用代理clone加速
不设置代理10kb/s不到....,设置后,500kb/s左右跑- 开shadowsocks,代理127.0.0.1:1080 编写一个脚本 /YOUR PATH/gitproxy.sh #!/bin ...
- unittest框架及自动化测试
之前在公司做过自动化测试的知识分享,现在把它记录下来. •一.如何更好的编写测试用例 •1.模块化:将一些基础的.共有的步骤代码独立为单独的模块,使用时再调用.好处:可以使代码复用,减少代码编写, ...