public class HeaderViewListAdapter
extends Object
implements WrapperListAdapter, Filterable
java.lang.Object | |
↳ | android.widget.HeaderViewListAdapter |
当ListView具有标题视图时使用ListAdapter。 此ListAdapter包装另一个,并且还跟踪标题视图及其关联的数据对象。
这是作为基类的目的; 你可能不需要直接在你自己的代码中使用这个类。
Inherited constants |
---|
From interface android.widget.Adapter
|
Public constructors |
|
---|---|
HeaderViewListAdapter(ArrayList<ListView.FixedViewInfo> headerViewInfos, ArrayList<ListView.FixedViewInfo> footerViewInfos, ListAdapter adapter) |
Public methods |
|
---|---|
boolean |
areAllItemsEnabled() 指示是否启用此适配器中的所有项目。 |
int |
getCount() 本适配器所代表的数据集中有多少项目。 |
Filter |
getFilter() 返回可用于使用过滤模式约束数据的过滤器。 |
int |
getFootersCount() |
int |
getHeadersCount() |
Object |
getItem(int position) 获取与数据集中指定位置关联的数据项。 |
long |
getItemId(int position) 获取与列表中指定位置关联的行ID。 |
int |
getItemViewType(int position) 获取指定项目将由 |
View |
getView(int position, View convertView, ViewGroup parent) 获取显示数据集中指定位置的数据的视图。 |
int |
getViewTypeCount() 返回将由 |
ListAdapter |
getWrappedAdapter() 返回由此列表适配器包装的适配器。 |
boolean |
hasStableIds() 指示项目id在基础数据更改期间是否稳定。 |
boolean |
isEmpty() |
boolean |
isEnabled(int position) 如果指定位置上的项目不是分隔符,则返回true。 |
void |
registerDataSetObserver(DataSetObserver observer) 注册一个在此适配器使用的数据发生更改时调用的观察者。 |
boolean |
removeFooter(View v) |
boolean |
removeHeader(View v) |
void |
unregisterDataSetObserver(DataSetObserver observer) 通过 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
|
From interface android.widget.WrapperListAdapter
|
|
From interface android.widget.Filterable
|
|
From interface android.widget.ListAdapter
|
|
From interface android.widget.Adapter
|
HeaderViewListAdapter (ArrayList<ListView.FixedViewInfo> headerViewInfos, ArrayList<ListView.FixedViewInfo> footerViewInfos, ListAdapter adapter)
Parameters | |
---|---|
headerViewInfos |
ArrayList
|
footerViewInfos |
ArrayList
|
adapter |
ListAdapter
|
boolean areAllItemsEnabled ()
指示是否启用此适配器中的所有项目。 如果此方法返回的值随时间而改变,则不能保证其生效。 如果为true,则表示所有项目都是可选择的并且可点击(没有分隔符)。
Returns | |
---|---|
boolean |
True if all items are enabled, false otherwise. |
Filter getFilter ()
返回可用于使用过滤模式约束数据的过滤器。
此方法通常由 Adapter
类实现。
Returns | |
---|---|
Filter |
a filter used to constrain data |
Object getItem (int position)
获取与数据集中指定位置关联的数据项。
Parameters | |
---|---|
position |
int : Position of the item whose data we want within the adapter's data set. |
Returns | |
---|---|
Object |
The data at the specified position. |
long getItemId (int position)
获取与列表中指定位置关联的行ID。
Parameters | |
---|---|
position |
int : The position of the item within the adapter's data set whose row id we want. |
Returns | |
---|---|
long |
The id of the item at the specified position. |
int getItemViewType (int position)
获取指定项目将由 getView(int, View, ViewGroup)
创建的视图类型。
Parameters | |
---|---|
position |
int : The position of the item within the adapter's data set whose view type we want. |
Returns | |
---|---|
int |
An integer representing the type of View. Two views should share the same type if one can be converted to the other in getView(int, View, ViewGroup) . Note: Integers must be in the range 0 to getViewTypeCount() - 1. IGNORE_ITEM_VIEW_TYPE can also be returned. |
View getView (int position, View convertView, ViewGroup parent)
获取显示数据集中指定位置的数据的视图。 您可以手动创建视图或从XML布局文件中对其进行膨胀。 当视图膨胀时,父视图(GridView,ListView ...)将应用默认布局参数,除非使用inflate(int, android.view.ViewGroup, boolean)
来指定根视图并防止附加到根。
Parameters | |
---|---|
position |
int : The position of the item within the adapter's data set of the item whose view we want. |
convertView |
View : The old view to reuse, if possible. Note: You should check that this view is non-null and of an appropriate type before using. If it is not possible to convert this view to display the correct data, this method can create a new view. Heterogeneous lists can specify their number of view types, so that this View is always of the right type (see getViewTypeCount() and getItemViewType(int) ). |
parent |
ViewGroup : The parent that this view will eventually be attached to |
Returns | |
---|---|
View |
A View corresponding to the data at the specified position. |
int getViewTypeCount ()
返回将由getView(int, View, ViewGroup)
创建的视图类型的数量。 每种类型代表一组可以在getView(int, View, ViewGroup)
转换的getView(int, View, ViewGroup)
。 如果适配器始终为所有项返回相同类型的视图,则此方法应返回1。
只有在适配器设置为 AdapterView
时才会调用此方法。
Returns | |
---|---|
int |
The number of types of Views that will be created by this adapter |
ListAdapter getWrappedAdapter ()
返回由此列表适配器包装的适配器。
Returns | |
---|---|
ListAdapter |
The ListAdapter wrapped by this adapter. |
boolean hasStableIds ()
指示项目id在基础数据更改期间是否稳定。
Returns | |
---|---|
boolean |
True if the same id always refers to the same object. |
boolean isEnabled (int position)
如果指定位置上的项目不是分隔符,则返回true。 (分隔符是不可选择的,不可点击的项目)。 如果位置无效,则结果未指定。 在这种情况下应该抛出ArrayIndexOutOfBoundsException
以便快速失败。
Parameters | |
---|---|
position |
int : Index of the item |
Returns | |
---|---|
boolean |
True if the item is not a separator |
void registerDataSetObserver (DataSetObserver observer)
注册一个在此适配器使用的数据发生更改时调用的观察者。
Parameters | |
---|---|
observer |
DataSetObserver : the object that gets notified when the data set changes. |
void unregisterDataSetObserver (DataSetObserver observer)
通过 registerDataSetObserver(DataSetObserver)
取消注册先前已通过此适配器注册的观察者。
Parameters | |
---|---|
observer |
DataSetObserver : the object to unregister. |