Вот исходный код ArrayAdapter#remove
:
public void remove(T object) {
if (mOriginalValues != null) {
synchronized (mLock) {
mOriginalValues.remove(object);
}
} else {
mObjects.remove(object);
}
if (mNotifyOnChange) notifyDataSetChanged();
}
Единственное, что может бросить UnsupportedOperationException
, это строка в блоке else. Поэтому проблема в том, что используемый вами список не поддерживает удаление элементов. Я предполагаю, что вы используете массив. Попробуйте, например, ArrayList.
редактировать: да, что сказал Марк ...