android的activity之间可以传递对象或者集合吗请写写例子

android的activity之间可以传递对象或者集合吗请写写例子,第1张

当然可以传递对象

首先先构造一个对象

Student st= new Student()

Adds.set(st)

public void static sets(Student st)

这样就把 Student对象传递过去了

可以,传递的对象要实现序列化接口

implements java.io.Serializable或者实现android.os.Parcelable接口

存值

intent.putExtra("name", value)

取值,然后强制类型转换即可

intent.getSerializableExtra("name")

请采纳哈

这里有篇文章也写挺详细的:

http://www.cnblogs.com/shaocm/archive/2013/01/08/2851248.html

方法1:

直接让User类继承Serializable或者Parcelable接口即可,Intent只可以传输序列化的对象

//User类

public class User implements Serializable{

    private String name

    ..........

}

//直接加入intent

List<User> list = new ArrayList<User>()

Intent intent = new Intent()

intent.putExtra("list",list)

方法2:

把list集合转为字符串表示,可以使用json格式,直接用Gson框架转换即可,再到另一个activity转换回来

List<User> list = new ArrayList<User>()

Type type = new TypeToken<ArrayList<User>()>(){}.getType()

String json = new Gson().toJson(list,type)

intent.putExtra("list",json)

//转换回List<User>

String json = getIntent.getStringExtra("list")

Type type = new TypeToken<ArrayList<User>()>(){}.getType()

List<User> list = new Gson().fromJson(json,type)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11890024.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存