Soy nuevo en el desarrollo de Android. Estoy tratando de poblar un spinner usando el SimpleAdapter. Pero la lista de spinner muestra un elemento en blanco. Cuando hago clic en cualquier elemento, su texto se muestra correctamente en Toast. Por favor, dime cuál es el problema en mi código a continuación.Uso de SimpleAdapter con Spinner
public void onCreate(Bundle savedInstanceState) {
private List<Map<String, String>> data = new ArrayList<Map<String, String>>();
String[] from = new String[] { "colorsData" };
int[] to = new int[] { R.id.spinner };
String[] colors = getResources().getStringArray(R.array.colorsData);
for (int i = 0; i < colors.length; i++) {
data.add(addData(colors[i]));
}
Spinner spinner = (Spinner) findViewById(R.id.spinner);
SimpleAdapter simpleAdapter = new SimpleAdapter(this, data, android.R.layout.simple_spinner_item, from, to);
simpleAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(simpleAdapter);
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
Toast.makeText(
parent.getContext(),
"Selected Color:- "
+ parent.getItemAtPosition(position),
Toast.LENGTH_LONG).show();
}
});
}
private Map<String, String> addData(String colorName) {
Map<String, String> mapList = new HashMap<String, String>();
mapList.put("colorsData", colorName);
return mapList;
}
Con un breve vistazo a su pregunta, no estoy seguro de lo que realmente desea obtener. Pero si desea algunos elementos de la interfaz de usuario como página de configuración en Android. es decir: haga clic en un elemento en una vista de lista y abra un cuadro de diálogo para seleccionar algo, puede probar "Preferencia". La preferencia es una serie de elementos de la interfaz de usuario para configurar su aplicación. –