Android API 25 (Android 7.1.1 API)
AdapterView
public abstract class AdapterView
extends ViewGroup
Added in API level 1
java.lang.Object
↳android.widget.AdapterView<T extends android.widget.Adapter>
已知直接子类:
AbsSpinner
AdapterViewAnimator
【概述】
AdapterView是内容由适配器Adapter来决定的视图类。
有关常用的AdapterView子类,请参阅ListView,GridView,Spinner和Gallery。
【开发人员指南】
有关使用AdapterView的更多信息,请阅读Binding to Data with AdapterView。
【嵌套类】
类 AdapterView. AdapterContextMenuInfo
当为此AdapterView提供上下文菜单时,为onCreateContextMenu(ContextMenu,View,ContextMenuInfo)回调提供了额外的菜单信息。
【字段】
public long id用于显示上下文菜单的子视图的行 ID。
public int position用于显示上下文菜单的子视图在适配器中的位置。
public View targetView用于显示上下文菜单的子视图。也是 AdapterView的子视图之一。
【公有构造函数】publicAdapterView.AdapterContextMenuInfo (View targetView, int position, long id)
接口 AdapterView. OnItemClickListener
这个接口定义了当AdapterView中一元素被点击时,一个回调函数被调用。
【公共方法】public abstract voidonItemClick (AdapterView<?> parent, View view, int position, long id)
AdapterView中一元素被点击时,回调方法被调用。
如果需要访问与被选项相关的数据,执行程序可以调用getItemAtPosition(position)。
接口 AdapterView. OnItemLongClickListener
当单击并保持此视图中的项目时要调用的回调的接口定义。
这个接口定义了当AdapterView中一元素被长按时,一个回调函数被调用。
【公共方法】public abstract booleanonItemLongClick (AdapterView<?> parent, View view, int position, long id)
如果回调函数处理了长按时间,返回true;否则false。
接口 AdapterView. OnItemSelectedListener
选择此视图中的项目时要调用的回调的接口定义。
定义了当选中视图中的项目时调用的回调函数的接口。
【公共方法】public abstract voidonItemSelected (AdapterView<?> parent, View view, int position, long id)
当选中视图中的项目时执行的回调函数。
【公共方法】public abstract voidonNothingSelected (AdapterView<?> parent)
当视图中的处于选中状态的条目全部消失时执行的回调函数。
启动触控功能或适配器为空都可能导致选中条目消失。
【继承自view.ViewGroup的XML属性】
【继承自view.View的XML属性】
【公共构造函数】
AdapterView(Context context)
AdapterView(Context context, AttributeSet attrs)
AdapterView(Context context, AttributeSet attrs, int defStyleAttr)
【公共方法】
addView
void addView (View child)
void addView (View child, int index)
void addView (View child, ViewGroup.LayoutParams params)
void addView (View child, int index,ViewGroup.LayoutParams params)
API 1
该类不支持该方法,并在调用时抛出UnsupportedOperationException异常
getAccessibilityClassName
CharSequence getAccessibilityClassName ()
API 23
返回此对象的类名以用于辅助功能。子类只能覆盖这个,如果他们实现的东西,应该被视为一个全新的视图类,当辅助功能使用时,与其派生的类无关。这用于填充AccessibilityNodeInfo.setClassName。
setAdapter
void setAdapter (T adapter)
API 1
设置用于为该widget的视图提供用于显示的数据的适配器。
getAdapter
T getAdapter ()
API 1
返回当前与此widget关联的Adapter。
getCount
int getCount ()
API 1
返回与此AdapterView关联的适配器拥有的项目数。 (这是数据项的数量,可能大于可见视图的数量。)
setEmptyView
void setEmptyView (View emptyView)
API 1
设置当适配器为空时显示的视图view。
getEmptyView
View getEmptyView ()
API 1
当前适配器为空时,AdapterView可以显示一个称为空视图的特殊视图。 空视图用于向用户提供在此AdapterView中没有可用数据的反馈。
getFirstVisiblePosition
int getFirstVisiblePosition ()
API 1
返回显示在屏幕上的第一个元素在适配器的数据集中所处的位置。
getLastVisiblePosition
int getLastVisiblePosition ()
API 1
返回显示在屏幕上的最后一个元素在适配器的数据集中所处的位置。
getItemAtPosition
Object getItemAtPosition (int position)
API 1
获取与列表中指定位置相关联的数据。
getItemIdAtPosition
long getItemIdAtPosition (int position)
API 1
获取与列表中指定位置相关联的数据的id。
setOnClickListener
void setOnClickListener (View.OnClickListener l)
注册此视图被点击时要调用的监听器。如果此视图不可点击,则会变为可点击。
setOnItemClickListener
void setOnItemClickListener (AdapterView.OnItemClickListener listener)
注册适配器数据集中条目被点击时要调用的监听器。
getOnItemClickListener
AdapterView.OnItemClickListener getOnItemClickListener ()
API 1
返回适配器数据集中条目被点击时要调用的监听器。
performItemClick
boolean performItemClick (View view, int position, long id)
API 1
是否调用OnItemClickListener(如果已定义)。 执行与点击相关联的所有常规操作:报告辅助功能事件,播放声音等。
如果有一个分配的OnItemClickListener被调用,则返回true,否则返回false。
setOnItemLongClickListener
void setOnItemLongClickListener (AdapterView.OnItemLongClickListener listener)
API 1
注册适配器数据集中条目被长按时要调用的监听器。
getOnItemLongClickListener
AdapterView.OnItemLongClickListener getOnItemLongClickListener ()
API 1
返回适配器数据集中条目被长按时要调用的监听器。
getSelectedView
View getSelectedView ()
API 1
返回适配器数据集中当前被选中的条目的视图view。没有选择则为null。
getSelectedItem
Object getSelectedItem ()
API 1
返回适配器数据集中当前被选中的条目项。没有选择则为null。
getSelectedItemId
long getSelectedItemId ()
API 1
返回适配器数据集中当前被选中的条目项id。没有选择则为INVALID_ROW_ID。
getSelectedItemPosition
int getSelectedItemPosition ()
API 1
返回适配器数据集中当前被选中的条目项位置索引。没有选择则为INVALID_POSITION。
setOnItemSelectedListener
void setOnItemSelectedListener (AdapterView.OnItemSelectedListener listener)
API 1
注册适配器数据集中条目被选中时要调用的监听器。
getOnItemSelectedListener
AdapterView.OnItemSelectedListener getOnItemSelectedListener ()
API 1
返回适配器数据集中条目被选中时要调用的监听器。
getPositionForView
int getPositionForView (View view)
API1
返回适配器项对应的视图或其子视图在适配器数据集中的位置。
注意:此方法的结果仅反映在最近的布局传递期间绑定到视图的数据的位置。如果适配器的数据集已更改,但没有后续布局通过,则此方法返回的位置可能与适配器中数据的当前位置不匹配。
removeAllViews
void removeAllViews ()
该类不支持该方法,并在调用时抛出UnsupportedOperationException异常。
removeView
void removeView (View child)
该类不支持该方法,并在调用时抛出UnsupportedOperationException异常
removeViewAt
void removeViewAt (int index)
该类不支持该方法,并在调用时抛出UnsupportedOperationException异常
setFocusable
void setFocusable (boolean focusable)
API 1
设置此视图是否可以接收焦点。将此设置为false还将确保此视图在触摸模式下不能得到焦点。
setFocusableInTouchMode
void setFocusableInTouchMode (boolean focusable)
设置在触摸模式下此视图是否可以接收焦点。将此设置为true还将确保此视图可以得到焦点。
setSelection
void setSelection (int position)
设置当前选择的项目。为了辅助功能,重写该方法的子类必须首先调用父类的该方法。
【受保护的方法】
canAnimate
boolean canAnimate ()
API 1
指示视图组是否能够在首次布局之后为其子项设置动画。
dispatchRestoreInstanceState
void dispatchRestoreInstanceState (SparseArray<Parcelable> container)
API 1
为了防止适配器生成的视图被解冻而重写。
dispatchSaveInstanceState
void dispatchSaveInstanceState (SparseArray<Parcelable> container)
API 1
为了防止适配器生成的视图被冻结而重写。
onDetachedFromWindow
void onDetachedFromWindow ()
API 1
当视图从窗口分离时调用。在这一点上,它不再具有用于绘图的surface。
onLayout
void onLayout (boolean changed, int left, int top, int right, int bottom)
API 1
设置该视图其子视图的大小及位置。派生类可以重写此方法,并为其子类布局。