在Android活动之间传递字符串数组

问题描述 投票:26回答:4

我在第一个活动-A中有2个字符串数组,现在我需要将两个数组都传递给second_activity-B,我该怎么做?

我了解Android中的[Intent类概念,并且已经将单个变量值传递给了另一个活动,但是我还没有实现在活动之间传递字符串数组的概念,我已经在网上冲浪了一样。

请让我知道可能的解决方案。
android
4个回答
76
投票
Bundle b=new Bundle(); b.putStringArray(key, new String[]{value1, value2}); Intent i=new Intent(context, Class); i.putExtras(b);
希望这会帮助你。为了阅读:

Bundle b=this.getIntent().getExtras(); String[] array=b.getStringArray(key);


4
投票
不是直接回答问题,但您也可以在包中使用.putStringArrayListExtra()。它比发送字符串数组更灵活。

Bundle b=new Bundle(); b.putStringArrayListExtra("URL_ARRAY_LIST", myStringArrayList); Intent i=new Intent(context, Class); i.putExtras(b);

然后您可以按如下方式获取此arrayList:

ArrayList<String> urls; urls = getIntent().getStringArrayListExtra("URL_ARRAY_LIST");


3
投票
Intent将数据携带到键值映射中,其中'key'是将数据存储到Intent中时选择的字符串名称标识符。读取该数据时,您请求相同的“密钥”。您可以在一个Intent中存储各种数据类型。

0
投票
String [] froutes={"apple","mango","watermelon"}; for (int j=0; j<3; j++); { Log.d("my favourite froutes",""+froutes[j]); }
我在for循环中传递j veriable时收到错误说无法解析符号j
© www.soinside.com 2019 - 2024. All rights reserved.