AndroidStudio中Activity之间intent传递数据方法汇总

第一种:传递简单的字符串,或者数字:

发送:

String ss="这是一个字符串"

Intent intent=new Intent();

intent.setClass(A.this,B.Class)

intent.putExtra("data",ss);

startActivity(intent);

接收:

Intent intent=getIntent();

String ss=intent.getStringExtra("data");

//如果要传输int那就把String换成int

方法内参数类型:getIntExtra(name, defaultValue)

该方法中的 defaultValue 表示name对应的putExtra中没有传入有效的int类型值

就将defaultValue的值作为默认值传入。

第二种:传递arrayList:

用插件实现Parcelable接口,插件名称:Android Parcelable code generator ,直接在android studio里搜索就可以,下载然后重启androidstudio 然后在所要序列化的类中  按住alt+Insert选择parcelable就可以了。然后就是传输:

List llist = new ArrayList();
​​​​​​​Intent intent = new Intent();
intent.setClass(Inspection_Switch_LevelOne.this, Inspection_Switch_LevelTwo.class);
//这里是获取我要传输的数据
llist = dmaService.Inspection_Switch_One_level(SWork_ID, PhoneNum, SStartDate, SEndDate);
Bundle bundle = new Bundle();
bundle.putParcelableArrayList("data", (ArrayList) llist);
intent.putExtras(bundle);
startActivity(intent);

接收:

private List list;
Bundle bundle=this.getIntent().getExtras();
list=bundle.getParcelableArrayList("data");

 

还有另外一种序列化,未完待续···

你可能感兴趣的:(AS)