2017-04-02 2 views
0

ich eine XML-Datei haben, dass in ./values ist und sieht wie folgt aus:ohne es zu wissen

<resources> 
    <integer-array name="Bulbasaur"> 
     <item name="hp">0</item> 
     <item name="atk">0</item> 
     <item name="def">0</item> 
     <item name="speatk">1</item> 
     <item name="spedef">0</item> 
     <item name="speed">0</item> 
    </integer-array> 

    <integer-array name="Ivysaur"> 
     <item name="hp">0</item> 
     <item name="atk">0</item> 
     <item name="def">0</item> 
     <item name="speatk">1</item> 
     <item name="spedef">2</item> 
     <item name="speed">0</item> 
    </integer-array> 
... 
</resources> 

Ich möchte die intArrays durch ihren Namen zugreifen zu können, aber ich kann nicht benutze die R.id.stuff, weil ich den Namen von einer Eingabe bekomme. Ich habe bereits versucht getIdentifier() dann getIntArray(), wie diese zu verwenden:

getResources().getIntArray(getResources().getIdentifier("nameOfArray", "int[]", MyActivity.this.getPackageName()) 

Aber es hat nicht funktioniert. Was mache ich falsch? Wie greife ich auf diese Arrays zu?

Antwort

1

Bitte werfen Sie einen Blick auf die Antwort here. Sie möchten lieber "array" anstelle von "int[]" als zweiten Parameter der Methode Resources#getIdentifier verwenden.

+0

Das war es! Vielen Dank :) – Keker

Verwandte Themen