1.2k Aufrufe
Gefragt in Anwendungen(Java,C++...) von
Hallo

Vorerst: Es geht zwar um Android-programmeirung, aber die Frage bezieht sich nicht auf Android-Programmierung an sich

Also, ich bin grade dabei, mich in die Android-Programmierung einzuarbeiten, und habe in etwa 54 ImageViews eingebaut. Jedes in der Layyout-XML erhält in der Klasse R.id ein Int-Variable-Äquivalent. Jetzt hab ich also 54 Variablen R.id.ImageView01-54.

Jetzt möchte zum Weiterarbeiten in ein Array der Klasse ImageView einspeichern, und hier ist mein Problem: Ich will nicht 54 mal aufschreiben ivs[i] = ImageViewi blabla. Gesucht habe und ich denke das Schlagwort "Reflector" sollte mir weiterhelfen, leider habe nicht konkret verstanden, wie das abläuft. Versucht habe ich aebr folgendes:
R.id.class.getDeclaredField("ImageView03") z.B. Und scheitern tue ich hierran, dass ich zwar ein Field-Objekt bekomme, damit aber nichts anfangen kann, weil ich den Int-Wert der deklarierten Variable ImageView03 brauche (also quasi die ID des Steuerlements)!

Habt ihr eine Idee wie ich das machen kann?

Vielen Dank

LiebeGrüße

2 Antworten

0 Punkte
Beantwortet von kicia Mitglied (939 Punkte)
Ich hab' keine ahnung von Java, aber ich hab' einfach mal nach 'getDeclaredField' gesucht, und eine Beschreibung von 'Field' gefunden:
docs.oracle.com/javase/6/docs/api/java/lang/reflect/Field.html

Demnach gibt es u.a. eine Methode getInt().
Vielleicht hilft's ja.
0 Punkte
Beantwortet von
Hi

Danke für die Antwort, aber das hatte ich bereits vergeblich versucht :(

Grüße
...