Tengo un ListView que muestra los nombres de los países. He almacenado los nombres en strings.xml como un conjunto de cadenas llamado country_names.Uso de HashMap para asignar una cadena e int
En poblar el ListView, Puedo utilizar un ArrayAdapter la que se lee de strings.xml:
String[] countryNames = getResources().getStringArray(R.array.country_names);
ArrayAdapter<String> countryAdapter = new ArrayAdapter<String>(this, R.layout.checked_list, countryNames);
myList.setAdapter(countryAdapter);
Ahora también tengo un countryCode para cada país. Cuando se hace clic en el nombre de un país en particular en ListView, debo brindar por el CountryCode correspondiente.
Entiendo que la implementación de un HashMap es la mejor técnica para esto. Hasta donde yo sé, el HashMap se rellena con la función put().
myMap.put("Country",28);
Ahora mis preguntas son:
¿Es posible leer la matriz string.xml y lo utilizan para poblar el mapa? Quiero decir, quiero agregar elementos al Mapa, pero debo ser capaz de hacerlo leyendo los elementos de otra matriz. ¿Cómo puedo hacer esto?
La razón básica por la que pregunto es porque quiero mantener los nombres de los países y los códigos en un lugar donde sea más fácil agregarlos, eliminarlos o modificarlos.
Las cadenas de matrices se almacenan en strings.xml. ¿Dónde deben almacenarse matrices de enteros similares? En la carpeta de valores, pero bajo cualquier archivo XML específico?
Hola, Sergey. Quiero saber CÓMO poner programáticamente los valores en HashMap. ¿Podría compartir un fragmento de código en su respuesta? En cuanto a 2), gracias, eso es lo que estaba buscando. – kiki
He editado mi respuesta. –
¡Oye, muchas gracias! Estaba confundido si put() funcionaría de esa manera. – kiki