Android类说明---ArrayAdapter

本文译自:http://developer.android.com/reference/android/widget/ArrayAdapter.html

继承关系

java.lang.Object

   |___android.widget.BaseAdapter

          |___android.widget.ArrayAdapter<T>

类概要

通过任意类型对象数组返回的一个具体的BaseAdapter类。默认情况下,这个类期望给它提供一个TextView资源id的引用。如果你想使用更复杂的布局,就要使用带有资源id参数的构造器。这个资源id应该是一个较大布局资源中的TextView的引用。

但是,被引用的TextView对象会使用数组中每个对象的toString()方法来进行填充。你可以添加自定义对象的列表或数组。重写你的对象的toString()方法,以便决定在列表项目中要显示的文本。

要使用TextView以外的可视部件来显示数组内容,例如ImageView,或要把除了toString()结果以外的数据填充到View中,就要重写getView(int, View, ViewGroup)方法来返回你想要的类型。

Inherited Constants

来自接口android.widget.Adapter的常量

 

Public Constructors

 

public ArrayAdapter(Context context, int textViewResourceId)

  参数:context  当前的上下文环境

        textViewResourceId 包含在布局文件中的TextView的资源ID,在实例化View时使用。

 

public ArrayAdapter(Context context, int resource, int textViewResourceId)

  参数:context 当前的上下文环境

        resource 一个布局文件的资源ID,它包含了实例化View时使用的布局。

        textViewResourceId 要填入布局资源内部的TextView资源的id。

 

public ArrayAdapter(Context context, int textViewResourceId, T[] objects)

  参数:context 当前的上下文环境

        textViewResourceId 指定布局文件中包含的TextView资源的ID,它会在实例化View对象时使用。

        objects  代表ListView中的对象

 

public ArrayAdapter(Context context, int resource, int textViewResourceId, T[] objects)

  参数:context  当前的上下文环境

        resource  一个布局文件的资源ID,它包含了实例化View时使用的布局。

        textViewResourceId指定布局文件中包含的TextView资源的ID,它会在实例化View对象时使用。

        objects代表ListView中的对象

 

public ArrayAdapter(Context context, int textViewResourceId, List<T> objects)

  参数:context 当前的上下文环境

        textViewResourceId指定布局文件中包含的TextView资源的ID,它会在实例化View对象时使用。

        objects 代表ListView中的对象

 

public ArrayAdapter(Context context, int resource, int textViewResourceId, List<T> objects)

  参数:context当前的上下文环境

        resource一个布局文件的资源ID,它包含了实例化View时使用的布局。

        textViewResourceId指定布局文件中包含的TextView资源的ID,它会在实例化View对象时使用。

        Objects代表ListView中的对象

 

Public Methods

void

add(T object)

  把指定的对象添加到数组的末尾。

  参数:object 指定要添加到数组末尾的对象

void

addAll(Collection<?extends T> collection)

  把指定的数据集合添加到数组的末尾

  参数:collection指定了要添加到数组末尾的数据集合。

void

addAll(T… items)

  把指定的项目添加到数组的末尾

  参数:items 指定要添加到数组末尾的数据项目。

void

clear()

  从列表中删除所有的元素。

static ArrayAdapter<CharSequence>

createFromResource(Context context, int textArrayResId, int textViewResId)

  用外部的资源创建一个新的ArrayAdapter。通过getTextArray(int)方法来获得数组的内容。

  参数:context 应用程序的上下文环境。

        textArrayResId 用于数据源的数组标识.

        textViewResId 用于创建View的布局标识。

  返回值:ArrayAdapter

Context

getContext()

  返回跟该数组适配器相关联的上下文环境。这个上下文环境用于创建从资源中传递给构造器的View。

  返回值:跟该适配器相关联的上下文环境。

int

getCount()

View

getDropDownView(int position, View convertView, ViewGroup parent)

  获得弹出的下拉列表中指定位置的可视构件。

  参数:position 我们想要获取的可视构件项目的索引

        convertView 如果可能,它指定一个旧的可重用的View对象。注意:你应该检查这个View是非空的并且类型适当,然后再使用。如果它不能转换这个View来显示正确的数据,那么这个方法可以创建一个新的View对象。

        parent 跟这个View最终绑定的父对象。

  返回值跟指定位置数据对应的View对象。

Filter

getFilter()

  返回一个用于限制数据的过滤器(带有过滤模式)。

  这个方法通常由Adapter类来实现。

  返回值用于限制数据的过滤器。

T

getItem(int position)

long

getItemId(int position)

int

getPosition(T item)

  返回指定数组中的项目的索引。

  参数 item 要获取索引的项目

  返回值指定项目的索引。

View

getView(int position, View converView, ViewGroup parent)

 

Void

Insert(T object, int index)

  在指定的数组中索引位置插入指定的对象。

  参数:object 要插入数组中的对象

        index 对象必须要插入的索引位置

void

notifyDataSetChanged()

  通知绑定的观察者,数据已经发生变化了,任何反映数据集的View都应该自我刷新。

void

Remove(T object)

  从数组中删除执行的对象

  参数:object 要删除的对象

void

setDropDownViewResource(int resource)

  设置布局资源,来创建下拉的View

  参数 resource 定义下拉View的布局资源

void

setNotifyOnChange(boolean notifyOnChange)

  控制改变列表的方法(add(T)、insert(T, int)、remove(T)、clear()等)是否自动的调用notifyDataSetChanged()方法。如果设置为false,那么调用者必须手动的调用notifyDataSetChanged()方法,让改变反映到绑定的View中。默认值是true,并且调用notifyDataSetChanged()方法后会把这个flag重设为true。

  参数:notifyOnChange 如果是true,对列表的编辑会自动的调用notifyDataSetChanged()方法。

void

sort(Comparator<? super T> comparator)

  使用指定的比较器对适配器中的内容进行排序。

  参数:comparator 用于对包含在适配器中的对象进行排序比较的比较器。

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值