Xamarin Android 中Acitvity如何传递数据

时间:2023-03-08 18:19:23
Xamarin Android 中Acitvity如何传递数据

在xamarin android的开发中,activity传递数据非常常见,下面我也来记一下在android中activity之间传递数据的几种方式,

Xamarin Android中Activity之间传递一个简单的数值

//传入
Intent it = new Intent(this,typeof(OtherActivity));
it.PutExtra("name","科比")
StartActivity(it);
//接收
string Name = Intent.GetStringExtra("name");

Xamarin Android中Activity之间传递多个数值

传递多个值可以使用Bundle对象作为容器,通过调用Bundle的Put**** 先将数据存储到Bundle中,然后调用Intent的PutExtras方法将Bundle存入Intent中,调用的时候也是一样的道理。这种键值的形式传递数据,区分大小写,注意!

//传入
Intent it = new Intent(this,typeof(OtherActivity));
Bundle bd = new Bundle();
bd.PutBoolean("isNiubi",true);
bd.PutInt("Id",123456);
 bd.PutString("name","詹姆斯");
it.PutExtras(bd);
StartActivity(it);
//接收
Bundle bd = Intent.Extras;
int Id = bd.GetInt("Id");
string Name = bd.GetString("name");
bool niubi = bd.GetBoolean("niubi");

Xamarin Android中Activity传递数组

思密达,普通类型已经介绍了,但是如果数组呢,当然也是一样的。下面我就传递一个byte数组试试吧

//传入
Bundle bd = new Bundle();
bd.PutByteArray("byteArray",new byte[] {12,45,78,32,12 });
it.PutExtras(bd);
StartActivity(it);
//接收
Bundle bd = Intent.Extras;
byte[] byteArray = bd.GetByteArray("byteArray");

Xamarin Android中Activity传递集合

数组和集合传递起来区别不是很大吧------。。。。但是呵呵呵 ...