如何通过单击列表项以编程方式引用多个字符串数组

时间:2015-07-03 11:29:10

标签: android arrays listview android-listview

我是Android编程新手,想知道这个,

我在string.xml文件中定义了四个字符串数组

<resources>
<string-array name="person_name">
    <item>Max</item>
    <item>Heven</item>
    <item>Jhon</item>
</string-array>

<string-array name="phone">
    <item>123</item>
    <item>456</item>
    <item>789</item>
</string-array>

<string-array name="address">
    <item>XYZ</item>
    <item>ABC</item>
    <item>MNO</item>
</string-array>

<string-array name="area_code">
    <item>1</item>
    <item>2</item>
    <item>3</item>
</string-array>

我使用listview来显示person_name string-array。

现在我想,当我点击人名时,我想在另一项活动中使用textview显示相应的电话号码,电子邮件,地址和区号。

3 个答案:

答案 0 :(得分:0)

由于我们讨论的是具有 relation 的数据,您可能希望使用关系数据结构,如关系数据库。在Android中,您可以使用SQLite

如果您不希望数据增长(它将始终是相同的人),您还可以对值进行JSON编码并将整个字符串传递给下一个Activity

<resources>
<string-array name="person">
    <item>{"name": "Max", "phone":"123", "address":"XYZ", "areaCode": "1"}</item>
</string-array>
</resources>

答案 1 :(得分:0)

首先,您应该使用数据库来存储此类数据。

Resources res = getResources();
String[] planets = res.getStringArray(R.array.planets_array);

然后获取用户点击的元素编号并在planets中访问此位置。

请参阅this tutorial

答案 2 :(得分:0)

您可以按照以下简单步骤操作:

1)点击时取“person_name”的位置。

2)使用意图将该位置传递给第二个活动。

3)从该位置获取其他字符串数组的值。