在Intent中Monodroid传递int[]

本文关键字:int 传递 Monodroid Intent | 更新日期: 2023-09-27 18:03:33

我有两个活动A和B,我从活动A开始活动B,像这样:

var intent = new Intent(this, typeof (BActivity));
StartActivityForResult(intent, 1);

如果你按下活动B上的按钮,我必须将一个int[]数组传递给活动a,我创建了一个测试代码,它这样做:

var intent = new Intent();
int[] array = {1, 2, 3};
intent.PutExtra("__extra__", array);
SetResult(Result.Ok, intent);
Finish();

但是每当我试图从意图中获得这个值时,我接收null。以下是我的尝试:

var value = data.GetIntArrayExtra("__extra__");

我在这里做错了什么?我尝试了同样的字符串,它工作了,在我看来,只是int数组不工作…

在Intent中Monodroid传递int[]

试试:

Bundle bdl = new Bundle();
int[] array = {1, 2, 3};
bdl.PutIntArray("__extra__",array);
Intent intent = new Intent();
intent.PutExtra("extra", bdl);
SetResult(Result.Ok, intent);
Finish();

and on OnActivityResult:

Bundle credBdl = data.GetBundleExtra("extra");
int[] array=credBdl.GetIntArray("__extra__");