studio stackoverflow elementos ejemplo editar arrayadapter agregar adaptador android android-arrayadapter

android - stackoverflow - No se puede modificar ArrayAdapter en ListView: UnsupportedOperationException



listview adapter android studio (1)

Lo intenté, yo mismo ... Descubrí que no funcionó. Así que ArrayAdapter el código fuente de ArrayAdapter y descubrí el problema. El ArrayAdapter, al ser inicializado por una matriz, convierte la matriz en una Lista abstracta (Lista) que no se puede modificar.

Solución Use una ArrayList<String> lugar usando una matriz al inicializar ArrayAdapter.

String[] array = {"a","b","c","d","e","f","g"}; ArrayList<String> lst = new ArrayList<String>(Arrays.asList(array)); final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, lst);

¡Aclamaciones!

Estoy tratando de hacer una lista que contenga nombres. Esta lista debe ser modificable (agregar, eliminar, ordenar, etc.). Sin embargo, cada vez que intenté cambiar los elementos en ArrayAdapter, el programa se bloqueó, con el error java.lang.UnsupportedOperationException . Aquí está mi código:

ListView panel = (ListView) findViewById(R.id.panel); String[] array = {"a","b","c","d","e","f","g"}; final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, array); adapter.setNotifyOnChange(true); panel.setAdapter(adapter); Button button = (Button) findViewById(R.id.button); button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { adapter.insert("h", 7); } });

Intenté insertar, eliminar y borrar métodos, y ninguno de ellos funcionó. ¿Alguien me diría lo que hice mal?