我们可以使用ArrayAdapter实现简单的文本数据的展示等,同时ArrayAdapter也实现了remove方法,方便我们删除listview中的某一项数据,但在进行删除操作的时候可能会遇到些许问题,如当我们在ArrayAdapter的构造方法中传入数组类型的数据时会报如下异常:
我们查看一下其构造方法源码
我们可以看到源码中是把数组通过Arrays.asList(objects)方法转换为list的,但java中通过这种方法转换的list是无法进行add或remove的,所以为出现上面的异常。
如果我们想使用ArrayAdapter的remove方法可以把数据转换为list,调用ArrayAdapter的ArrayAdapter(Context context, int resource, List<T> objects)构造方法。
另外
我们再看一下remove方法的源码
在代码最后调用了notifyDataSetChanged()方法,实现了listview数据的刷新。