2017-04-06 1 views
0

Wie kann ich diesen Code neu schreiben, um Java-Referenzen für XML-IDs zu generieren:Android automatisch Java Bezug auf xml-IDs generieren für Schleife

ImageView image11 = (ImageView) findViewById(R.id.block11); 
ImageView image12 = (ImageView) findViewById(R.id.block12); 
ImageView image13 = (ImageView) findViewById(R.id.block13); 
ImageView image14 = (ImageView) findViewById(R.id.block14); 
ImageView image15 = (ImageView) findViewById(R.id.block15); 

und so weiter ... (100 Artikel) für lops mit/foreach (und vielleicht einige String-Variablen). Danke fürs Lesen!

+0

was wollen Sie tun? !! –

+0

@AtefHares, er versucht, einige Ansicht Initialisierung zu vereinfachen, um es in den Zyklus statt vieler ähnlicher Zeilen des Codes –

+0

@VladMatvienko ja verschieben, aber er redet über 100 Sicht! Ich denke, was auch immer er zu implementieren versucht, kann mit 'listviews' oder' recyclerviews' gemacht werden –

Antwort

4

Sie eine List von ImageViews und findViewById sie mit Namen erstellen können, wie folgt aus:

List<ImageView> images = new ArrayList(); 
for(int i = 1; i < 6; i++) { 
    int viewId = context.getResources().getIdentifier("block" + i, "id", context.getPackageName()); 
    images.add((ImageView)findViewById(viewId)) 

} 
+0

Ich habe den Kontext in getApplicatonContext geändert, um den Fehler loszuwerden. Und erhalten Sie auch Fehler in der letzten Codezeile images.add (findViewById (viewId)) Fehler: – createcode

+0

@createcode, fortfahren, welcher Fehler? –

+0

** hinzufügen (android.widget.ImageView) ** in der Liste kann nicht angewendet werden (android.view.View) – createcode

Verwandte Themen