Alexej D.
- Forum-Beiträge: 10
30.01.2014, 20:43:20 via Website
30.01.2014 20:43:20 via Website
Hallo zusammen,
ich bin noch ein ziemlicher Änfänger im programmieren. Dank des Forums habe ich aber schon einiges geschafft. Seit ein paar Tagen komme ich aber leider nicht mehr weiter und hoffe das ihr mir helfen könnt.
Ich möchte eine Liste aus einem Array erzeugen und wenn ein Element davon angeklickt wird, soll in einer neuen Activity wieder eine Liste erstellt werden. (das läuft auch soweit)
Die Klasse ZweiteListe besteht im wesentlichen auch wieder aus dem selben Code wie oben.
Nun möchte ich aber dass die neue Liste kein statisches Array aus meiner value/list_data.xml zugewiesen bekommt, sondern ich möchte, dass das Array zum Füllen der ListView in Abhängigkeit des geklickten Elementes ausgewählt wird.
Bsp: ich habe in der list_data.xml das Array:
erste_liste mit den items: Buch, Film, Musik, Comic
Buch mit den items: Mathe, Deutsch, Physik
Film mit den items: Komödie, Thriller, ...
Comic ...
Mit der MainActivity wird die ListView mit "erste_liste" also Buch, Film, Musik, Comic gefüllt
klicke ich jetzt z.B. auf Film, soll Komödie, Thriller, .. ausgegeben werden
hätte ich auf Buch geklickt, sollte Mathe, Deutsch, Physik ausgegeben werden.
Ich könnte natürlich eine eigene Klasse für Buch, Film und Comic anlegen aber da noch weitere Arrays folgen sollen, wird es sicher auf Dauer unübersichtlich.
Ich hoffe ich habe es einigermaßen verständlich erklärt :-)
ich bin noch ein ziemlicher Änfänger im programmieren. Dank des Forums habe ich aber schon einiges geschafft. Seit ein paar Tagen komme ich aber leider nicht mehr weiter und hoffe das ihr mir helfen könnt.
Ich möchte eine Liste aus einem Array erzeugen und wenn ein Element davon angeklickt wird, soll in einer neuen Activity wieder eine Liste erstellt werden. (das läuft auch soweit)
1public class altemainActivity extends ListActivity {
2 @Override
3 public void onCreate(Bundle savedInstanceState) {
4 super.onCreate(savedInstanceState);
5
6 // storing string resources into Array
7 String[] ersteStringArray = getResources().getStringArray(R.array.ersteListe);
8
9 // Binding resources Array to ListAdapter
10 this.setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, R.id.label, ersteStringArray));
11 ListView lv = getListView();
12
13 // listening to single list item on click
14 lv.setOnItemClickListener(new OnItemClickListener() {
15 public void onItemClick(AdapterView<?> parent, View view,
16 int position, long id) {
17
18 // selected item
19 String product = ((TextView) view).getText().toString();
20
21 // Launching new Activity on selecting single List Item
22
23
24
25 Intent i = new Intent(getApplicationContext(), ZweiteListe.class);
26 // sending data to new activity
27 i.putExtra("product", product);
28 startActivity(i);
29
30
31 }
32 });
33 }
2 @Override
3 public void onCreate(Bundle savedInstanceState) {
4 super.onCreate(savedInstanceState);
5
6 // storing string resources into Array
7 String[] ersteStringArray = getResources().getStringArray(R.array.ersteListe);
8
9 // Binding resources Array to ListAdapter
10 this.setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, R.id.label, ersteStringArray));
11 ListView lv = getListView();
12
13 // listening to single list item on click
14 lv.setOnItemClickListener(new OnItemClickListener() {
15 public void onItemClick(AdapterView<?> parent, View view,
16 int position, long id) {
17
18 // selected item
19 String product = ((TextView) view).getText().toString();
20
21 // Launching new Activity on selecting single List Item
22
23
24
25 Intent i = new Intent(getApplicationContext(), ZweiteListe.class);
26 // sending data to new activity
27 i.putExtra("product", product);
28 startActivity(i);
29
30
31 }
32 });
33 }
Die Klasse ZweiteListe besteht im wesentlichen auch wieder aus dem selben Code wie oben.
Nun möchte ich aber dass die neue Liste kein statisches Array aus meiner value/list_data.xml zugewiesen bekommt, sondern ich möchte, dass das Array zum Füllen der ListView in Abhängigkeit des geklickten Elementes ausgewählt wird.
Bsp: ich habe in der list_data.xml das Array:
erste_liste mit den items: Buch, Film, Musik, Comic
Buch mit den items: Mathe, Deutsch, Physik
Film mit den items: Komödie, Thriller, ...
Comic ...
Mit der MainActivity wird die ListView mit "erste_liste" also Buch, Film, Musik, Comic gefüllt
klicke ich jetzt z.B. auf Film, soll Komödie, Thriller, .. ausgegeben werden
hätte ich auf Buch geklickt, sollte Mathe, Deutsch, Physik ausgegeben werden.
Ich könnte natürlich eine eigene Klasse für Buch, Film und Comic anlegen aber da noch weitere Arrays folgen sollen, wird es sicher auf Dauer unübersichtlich.
Ich hoffe ich habe es einigermaßen verständlich erklärt :-)
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.