zuordnen Ich habe eine ListView, die Namen von Ländern zeigt. Ich habe die Namen in strings.xml als String-Array namens country_names gespeichert.Verwenden von HashMap, um eine Zeichenfolge und Int
In die Listview bevölkert, verwende ich einen ArrayAdapter, die von strings.xml liest:
String[] countryNames = getResources().getStringArray(R.array.country_names);
ArrayAdapter<String> countryAdapter = new ArrayAdapter<String>(this, R.layout.checked_list, countryNames);
myList.setAdapter(countryAdapter);
Jetzt auch ich habe einen Countrycode für jedes Land. Wenn ein bestimmter Ländername auf die ListView geklickt wird, muss ich den entsprechenden CountryCode toasten.
Ich verstehe die Implementierung einer HashMap ist die beste Technik dafür. Soweit ich weiß, wird die HashMap mit der Funktion put() gefüllt.
myMap.put("Country",28);
Nun meine Fragen sind:
Ist es möglich, die string.xml Array zu lesen und verwenden, um die Karte zu füllen? Ich meine, ich möchte Elemente zur Karte hinzufügen, aber ich muss dazu in der Lage sein, die Elemente aus einem anderen Array zu lesen. Wie kann ich das machen?
Der Grund, warum ich frage, ist, weil ich die Ländernamen und Codes an einem Ort behalten möchte, wo es einfacher ist, sie hinzuzufügen/zu entfernen/zu modifizieren.
Die String-Arrays werden in strings.xml gespeichert. Wo müssen ähnliche Integer-Arrays gespeichert werden? Im Werteordner, aber unter einer bestimmten XML-Datei? sie programmatisch setzen in den
HashMap
String-Array und Integer-Array, und dann:
Hallo, Sergey. Ich möchte wissen, wie Sie die Werte programmatisch in die HashMap einfügen. Sie können ein Code-Snippet in Ihrer Antwort teilen. Zu 2), danke, das ist, was ich gesucht habe. – kiki
Ich habe meine Antwort bearbeitet. –
Hey, vielen Dank! Ich war verwirrt, ob put() so funktionieren würde. – kiki