为了账号安全,请及时绑定邮箱和手机立即绑定

使用Intent.putExtra发送数组

使用Intent.putExtra发送数组

开满天机 2019-08-08 15:10:08
使用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'。我一直在寻找一些例子,但我没有发现任何事情。
查看完整描述

3 回答

?
慕森卡

TA贡献1806条经验 获得超8个赞

您正在使用数组设置额外的。然后你试图得到一个int。

你的代码应该是:

int[] arrayB = extras.getIntArray("numbers");


查看完整回答
反对 回复 2019-08-08
?
慕容3067478

TA贡献1773条经验 获得超3个赞

此代码发送整数值数组

初始化数组列表

List<Integer> test = new ArrayList<Integer>();

将值添加到数组列表

test.add(1);test.add(2);test.add(3);Intent intent=new Intent(this, targetActivty.class);

将数组列表值发送到目标活动

intent.putIntegerArrayListExtra("test", (ArrayList<Integer>) test);startActivity(intent);

在这里你可以获得targetActivty的值

Intent intent=getIntent();ArrayList<String> test = intent.getStringArrayListExtra("test");


查看完整回答
反对 回复 2019-08-08
?
GCT1015

TA贡献1827条经验 获得超4个赞

final static String EXTRA_MESSAGE = "edit.list.message";Context context;public void onClick (View view){   
    Intent intent = new Intent(this,display.class);
    RelativeLayout relativeLayout = (RelativeLayout) view.getParent();

    TextView textView = (TextView) relativeLayout.findViewById(R.id.textView1);
    String message = textView.getText().toString();

    intent.putExtra(EXTRA_MESSAGE,message);
    startActivity(intent);}


查看完整回答
反对 回复 2019-08-08
  • 3 回答
  • 0 关注
  • 1075 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信