Podemos establecer una ArrayList que contiene HashMap en un ArrayAdapter?

Estoy usando:

ArrayList<HashMap<String,String>> items = new ArrayList<HashMap<String,String>>();
ArrayAdapter<ArrayList<HashMap<String, String>>> ad = new ArrayAdapter<ArrayList<HashMap<String,String>>>(this, android.R.layout.simple_list_item_1,items);

pero este me da un error que dice:

El constructor ArrayAdapter>>(searchname, int, ArrayList>) es indefinido

3 Comentarios

  1. 2

    ArrayAdapter quiere saber el tipo de los elementos dentro de la lista, no el tipo de la lista. Quitar la envolvente ArrayList<> y debería funcionar.

    ArrayList<HashMap<String,String>> items =
            new ArrayList<HashMap<String,String>>();
    
    ArrayAdapter<HashMap<String, String>> ad =
            new ArrayAdapter<HashMap<String,String>>(this,
                android.R.layout.simple_list_item_1,items);
  2. 0

    Usted puede convertir el tipo de HashMap<String,String>> a una clase. Por ejemplo, si las claves de la hashmap son los países y los valores son lenguajes, usted puede hacer una clase que se llama «País», con estas dos variables (el país,el idioma).
    A continuación, el AdapterClass tiene que ampliar la ArrayAdapter<Country>, en el método getView usted puede acceder a las variables de cada País.

Dejar respuesta

Please enter your comment!
Please enter your name here