我创造了这个在 activity
:
protected void onClickSunSea(View v) {
persons = (EditText) findViewById(R.id.txtPerson);
days = (EditText) findViewById(R.id.txtDays);
String p = persons.getText().toString();
String d = days.getText().toString();
String [] array = getResources().getStringArray(R.array.sunsea);
Intent myintent = new Intent(MainActivity.this, MainActivity.class);
myintent.putExtra("PERSONS", p);
myintent.putExtra("DAYS", d);
myintent.putExtra("PLACES",array);
startActivity(myintent);
}
将发送到这 activity
:
String person = getIntent().getStringExtra("PERSONS");
String day = getIntent().getStringExtra("DAYS");
TextView txtPerson = (TextView) findViewById(R.id.txtViewPersons);
txtPerson.setText("Persons travelling: " + person);
TextView txtDay = (TextView) findViewById(R.id.txtViewDays);
txtDay.setText("Days of traveling: " + day);
String[] arrayCityBreak = getIntent().getStringArrayExtra("PLACES");
ArrayAdapter<String> adapterCityBreak = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, arrayCityBreak);
ListView myview = (ListView) findViewById(R.id.lstView);
myview.setAdapter(adapterCityBreak);
Strings.xml 取得这些数组︰
<resources>
<string name="app_name">Assignment</string>
<array name="citybreak">
<item>Barcelona, Spain</item>
<item>Berlin, Germany</item>
<item>Copenhagen, Denmark</item>
<item>Gothenburg, Sweden</item>
<item>Milan, Italy</item>
</array>
<array name="sunsea">
<item>Alicante, Spain</item>
<item>Antalya, Turkey</item>
<item>Athens, Greece</item>
<item>Florida, USA</item>
<item>Gran Canaria, Spain</item>
</array>
<array name="skisnow">
<item>Kiruna, Sweden</item>
<item>Trondheim, Norway</item>
<item>Salzburg, Austria</item>
<item>Kittila, Finland</item>
<item>Ivalo, Finland</item>
</array>
我想要插入子项与一个价格里面,例如︰西班牙巴塞罗那200,然后得到"200"中变量的值,并改变它,然后把它放回要把它写出来与新值 + 一些文本在它之前的数组。像这样︰巴塞罗那,西班牙2 人的费用是 400 谁能帮我的吗? 希望你明白我的问题。
首先,你应该使用某种类型的地图对于此数据,所以你就可以有 pair
地方城市名称将是关键和价格将一个值。坏消息是你不能保存在地图 resources
。但你可以"观摩",例如使用"|"作为分隔符︰
<array name="citybreak">
<item>Barcelona, Spain|200</item>
<item>Berlin, Germany|300</item>
<item>Copenhagen, Denmark|250</item>
<item>Gothenburg, Sweden|500</item>
<item>Milan, Italy|700</item>
</array>
然后你可以分析这些字符串和从它创建一幅地图。作为一个例子检查这个答案。当你会有一张地图时,您可以通过它对你的第二 activity
修改那里的价格,然后将其发送回与新价格。