请问您能告诉我 ArrayAdapter
、BaseAdapter
和 ListAdapter
之间的区别吗?
请问您能告诉我 ArrayAdapter
、BaseAdapter
和 ListAdapter
之间的区别吗?
BaseAdapter
顾名思义,是所有适配器的基类。
当您扩展 BaseAdapter 类时,您需要实现所有方法,例如 getCount()
,getId()
等。
ArrayAdapter
是一个可以处理数据数组的类。您只需要重写 getview()
方法即可。
ListAdapter
是由具体适配器类实现的接口。
BaseAdapter
是一个抽象类,而 ArrayAdapter
和 ListAdapter
是具体类。
ArrayAdapter
和 ListAdapter
类是开发出来的,因为一般我们处理的是数组数据集和列表数据集。
ListAdapter
它是扩展Adapter的接口,是ListView和支持列表的数据之间的桥梁。
BaseAdaper
常见的实现适配器的通用基类,可以同时在ListView(通过实现专门的ListAdapter接口)和Spinner(通过实现专门的SpinnerAdapter接口)中使用。
ArrayAdapter
一个具体的BaseAdapter,由任意对象数组支持。
请参考以下链接
ArrayAdapter
是一个具体类是正确的。然而,ListAdapter
不是一个类,而是由BaseAdapter
实现的接口。简而言之,您可以使用现成的ArrayAdapter
,或编写自己扩展BaseAdapter
的适配器。 - Spinner