[关闭]
@Arbalest-Laevatain 2018-08-24T13:14:49.000000Z 字数 934 阅读 565

Activity之间传值

Android


总体来说都是用intent来传值比较简单

基本类型变量传值

  1. Intent intent=new Intent(getApplicationContext(),Activitydemo05.class);
  2. intent.putExtra("num",num);
  3. startActivity(intent);
  4. //接受传值
  5. Intent intent = getIntent();
  6. final int num = (int) getIntent().getSerializableExtra("num");
  7. //这里要根据变量类型来

数组

类对象传值

对象数组

基本方法同上面的类对象传值,但是!
先把对象的类序列化

Parcelable法

参看:
https://www.zybuluo.com/Arbalest-Laevatain/note/1257970

Serializable法

待补充

使用Arraylist容器定义对象数组:

  1. //省略type类的定义……
  2. //定义数组
  3. ArrayList<type> arraylist=new ArrayList<type>();
  4. //添加元素进list
  5. type t = new type();
  6. arraylist.add(t);
  7. //要传值的话用intent
  8. //假设要传值过去的activity是Activitydemo05
  9. //在当前activity里面写
  10. Intent intent=new Intent(getApplicationContext(),Activitydemo05.class);
  11. intent.putParcelableArrayListExtra("list",arraylist);
  12. startActivity(intent);
  13. //在Activitydemo05里面写
  14. Intent intent = getIntent();
  15. final int num = (int) getIntent().getSerializableExtra("num");
  16. ArrayList<type> arraylist00=new ArrayList<type>();
  17. arraylist00 = intent.getParcelableArrayListExtra("list");

就可以了

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注