使用Intent.putExtra发送数组

使用Intent.putExtra发送数组

我在活动A中有一个整数数组:

int array[] = {1,2,3};

我想将该变量发送到活动B,因此我创建了一个新的intent并使用了putExtra方法:

Intent i = new Intent(A.this, B.class);i.putExtra("numbers", array);startActivity(i);

在活动BI中获取信息:

Bundle extras = getIntent().getExtras();int arrayB = extras.getInt("numbers");

但这并不是真的发送数组,我只是在arrayB上得到值'0'。我一直在寻找一些例子,但我没有发现任何事情。


开满天机
浏览 1076回答 3
3回答

慕森卡

您正在使用数组设置额外的。然后你试图得到一个int。你的代码应该是:int[] arrayB = extras.getIntArray("numbers");

慕容3067478

此代码发送整数值数组初始化数组列表List<Integer>&nbsp;test&nbsp;=&nbsp;new&nbsp;ArrayList<Integer>();将值添加到数组列表test.add(1);test.add(2);test.add(3);Intent&nbsp;intent=new&nbsp;Intent(this,&nbsp;targetActivty.class);将数组列表值发送到目标活动intent.putIntegerArrayListExtra("test",&nbsp;(ArrayList<Integer>)&nbsp;test);startActivity(intent);在这里你可以获得targetActivty的值Intent&nbsp;intent=getIntent();ArrayList<String>&nbsp;test&nbsp;=&nbsp;intent.getStringArrayListExtra("test");

GCT1015

final&nbsp;static&nbsp;String&nbsp;EXTRA_MESSAGE&nbsp;=&nbsp;"edit.list.message";Context&nbsp;context;public&nbsp;void&nbsp;onClick&nbsp;(View&nbsp;view){&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;Intent&nbsp;intent&nbsp;=&nbsp;new&nbsp;Intent(this,display.class); &nbsp;&nbsp;&nbsp;&nbsp;RelativeLayout&nbsp;relativeLayout&nbsp;=&nbsp;(RelativeLayout)&nbsp;view.getParent(); &nbsp;&nbsp;&nbsp;&nbsp;TextView&nbsp;textView&nbsp;=&nbsp;(TextView)&nbsp;relativeLayout.findViewById(R.id.textView1); &nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;message&nbsp;=&nbsp;textView.getText().toString(); &nbsp;&nbsp;&nbsp;&nbsp;intent.putExtra(EXTRA_MESSAGE,message); &nbsp;&nbsp;&nbsp;&nbsp;startActivity(intent);}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java
Android