- Forum-Beiträge: 43
28.11.2016, 15:16:45 via Website
28.11.2016 15:16:45 via Website
Hallo,
ich habe eine Frage:
Es gibt ja die Standard-Struktur der Resourcen res/drawable oder res/raw etc.
Ich entwickel momentan ein Spiel, bei dem es 100 Level geben soll. Jedes Level hat ein Daten-File welches ich unter res/raw ablege und ein Vorschaubild unter res/Drawable.
Um auf die Resourcen einfach zugreifen zu können habe ich mir ein Array erstellt:
int[] resourceDataID = {
R.raw.level1,
R.raw.level2,
R.raw.level3,
R.raw.level4,
R.raw.level5,
R.raw.level6,
R.raw.level7,
R.raw.level8,
R.raw.level9,
R.raw.level10,
R.raw.level11,
R.raw.level12,
R.raw.level13,
R.raw.level14,
R.raw.level15
};
bzw.
int[] resourcePreviewID = {
R.drawable.level1,
R.drawable.level2,
R.drawable.level3,
R.drawable.level4,
R.drawable.level5,
R.drawable.level6,
R.drawable.level7,
R.drawable.level8,
R.drawable.level9,
R.drawable.level10,
R.drawable.level11,
R.drawable.level12,
R.drawable.level13,
R.drawable.level14,
R.drawable.level15
};
Das ganze wird nun bei 15 Leveln schon sehr länglich und es erscheint mir nicht sinnvoll ein Array auf diese Weise mit 100 Defaultwerten zu belegen.
Gibt es noch eine andere Möglichkeit auf die Resourcen im Ordner zuzugreifen. Z.B. das Array über ihren Namen als String zu füllen, dass man etwas in dieser Art machen könnte:
for(int i = 0; i < 15; i++)
{
resourceDataID[i] = ResourceByString("res/raw/level" + String.valueOf(i+1));
}
Irgend sowas in der Art "getResourceByStringName()" oder so. Ich möchte einfach ungern 2 Arrays händig mit 100 Einträgen füllen. Sowas muss sich doch mittels Schleife lösen lassen.
Oder sind die res/raw/ und res/drawable/ gar nicht für solch eine große Menge an Dateien gedacht?
Hoffe jemand weiß Rat, bei meiner Recherche im Netz bin ich immer nur auf die von mir verwendete Methode gestoßen, sich ein Array mit Defaultwerten selbst anzulegen oder statt dem Array eine XML-Datei zu verwenden, in der man aber dann wiederum die 100 Einträge händig füllen müsste.
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.