Lijstweergave: een item verwijderen

Ik heb een vergelijkbare vraag al gemaakt , maar ik heb een probleem:

String lv_arr[] = new String[key];
ArrayAdapter adapterlist = new ArrayAdapter(this, android.R.layout.simple_list_item_1, lv_arr);

listView1.setTextFilterEnabled(true);
listView1.setAdapter(adapterlist);

adapterlist.notifyDataSetChanged();
adapterlist.remove(adapterlist.getItem(0));
adapterlist.notifyDataSetChanged();

Het item in ListView wordt niet verwijderd met behulp van de onderstaande code. Ik zocht dagenlang naar een oplossing.

adapterlist.remove(String object);
1
toegevoegd de auteur Sam, de bron

2 antwoord

Het probleem is dat de array die u gebruikt geen ondersteuning biedt voor het verwijderen van items

U ontvangt UnsupportedOperationException terwijl u het item van de adapter verwijdert met een gewone Java-array (bijv. String []). Probeer iets te gebruiken dat de interface java.util.List implementeert (bijvoorbeeld ArrayList).

1
toegevoegd

Probeer de objecten uit uw verzameling te verwijderen en bel adapterlist.notifyDataSetChanged() om de verzameling opnieuw te laden.

lv_arr.removeAt(0);
adapterlist.notifyDataSetChanged();
0
toegevoegd