android api 中文 (73)—— AdapterView

简介:

前言

  本章内容是android.widget.AdapterView,版本为Android 2.3 r1,翻译来自"cnmahj",欢迎大家访问他的博客:http://android.toolib.net/blog/,再次感谢"cnmahj"!欢迎你一起参与Android API 的中文翻译,联系我over140@gmail.com。 

 

声明

  欢迎转载,但请保留文章原始出处:) 

    博客园:http://www.cnblogs.com/

    Android中文翻译组:http://code.taobao.org/project/view/404/

 

正文

  一、结构

public abstract class AdapterView<T extends Adapter> extends ViewGroup

        

java.lang.Object

android.view.View

         android.view.ViewGroup

                   android.widget.AdapterView<T extends android.widget.Adapter>

 

直接子类

             AbsListViewAbsSpinner

间接子类

ExpandableListViewGalleryGridViewListViewSpinner

 

  二、概述

AdapterView 是内容由 Adapter 来决定的视图类。

参见 ListViewGridViewSpinner 和 Gallery 等常见子类。

 

  三、常量

  public static final int INVALID_POSITION

  代表无效的位置。有效值的范围是 0 到当前适配器项目数减 1 。

  常量值: -1 (0xffffffff)

 

  public static final long INVALID_ROW_ID

  代表空或者无效的行ID。

  常量值: -9223372036854775808 (0x8000000000000000)

 

  public static final int ITEM_VIEW_TYPE_HEADER_OR_FOOTER

  当条项是列表头或列表尾时,调用 getItemViewType(int) 函数的返回值。

  常量值: -2 (0xfffffffe)

 

  public static final int ITEM_VIEW_TYPE_IGNORE

  当适配器禁止条项的视图再利用时,调用 getItemViewType(int) 函数的返回值。

  常量值: -1 (0xffffffff)

 

  四、构造函数

  public AdapterView (Context context)

  构造函数

 

  public AdapterView (Context context, AttributeSet attrs)

  构造函数

 

  public AdapterView (Context context, AttributeSet attrs, int defStyle)

  构造函数

 

  五、公共方法

  public void addView (View child)

  该类不支持该方法,如果调用将抛出 UnsupportedOperationException 异常。

  参数

         child  忽略

      异常

        UnsupportedOperationException 调用该方法时

 

  public void addView (View child, int index)

  该类不支持该方法,如果调用将抛出 UnsupportedOperationException 异常。

  参数

           child         忽略。

  index       忽略。

  抛出

         UnsupportedOperationException 调用该方法时

 

  public void addView (View child, int index, ViewGroup.LayoutParams params)

  该类不支持该方法,如果调用将抛出 UnsupportedOperationException 异常。

  参数

           child         忽略。

  index       忽略。

  params  忽略。

  抛出

         UnsupportedOperationException 调用该方法时

 

 

  public void addView (View child, ViewGroup.LayoutParams params)

  该类不支持该方法,如果调用将抛出 UnsupportedOperationException 异常。

  参数

       child         忽略。

   params  忽略。

  抛出

         UnsupportedOperationException 调用该方法时

 

  public boolean dispatchPopulateAccessibilityEvent (AccessibilityEvent event)

  分发 AccessibilityEvent 事件到 该视图 的子视图中。

  参数

         event       事件。

  返回值

  如果事件分发完成,返回真。 

 

  public abstract T getAdapter ()

  返回当前与该小部件关联的适配器。

  返回值

  用于提供视图内容的适配器。 

 

  public int getCount ()

返回值

 AdapterView 相关联的适配器的条目数量。(该值是数据条目的数量, 可能大于可见的视图的数量。) 

 

  public View getEmptyView ()

  当前适配器无内容时,AdapterView 会显示特殊的空视图。 空视图用于告诉用户,该 AdapterView 没有数据。

  返回值

  适配器为空时显示的视图。 

 

  public int getFirstVisiblePosition ()

  返回显示在屏幕上的第一个元素在适配器中所处的位置。

  返回值

  在适配器数据集中的位置。 

 

  public Object getItemAtPosition (int position)

  取得列表中指定位置的数据。

  参数

         position 要取得数据的位置。

  返回值

  列表中指定位置的数据。 

 

  public long getItemIdAtPosition (int position) 

  (译者注:关于此方法的分析,参见这里)

 

  public int getLastVisiblePosition ()

  返回显示在屏幕上的最后一个元素在适配器中所处的位置。

  返回值

  在适配器数据集中的位置。 

 

  public final AdapterView.OnItemClickListener getOnItemClickListener ()

返回值

  点击 AdapterView 中的条目时执行的回调函数;没有设置时返回空。

 

  public final AdapterView.OnItemLongClickListener getOnItemLongClickListener ()

返回值

取得长按 AdapterView 中的条目时执行的回调函数的监听器;未设置则返回空。 

 

  public final AdapterView.OnItemSelectedListener getOnItemSelectedListener () 

 

  public int getPositionForView (View view)

  取得适配器项目对应的视图或其子视图在适配器的数据中所处的位置。

  参数

         view         适配器条目或其后代的视图。调用时该项目在 AdapterView 中必须可见。

  返回值

  视图在适配器数据集中的位置;如果视图不在数据列表中或当前不可见,则返回 INVALID_POSITION 

 

  public Object getSelectedItem ()

返回值

当前选中条目对应的数据;无选中条目时返回空。 

 

  public long getSelectedItemId ()

返回值

当前选中条目相应的 ID;无选中条目则返回 INVALID_ROW_ID 

 

  public int getSelectedItemPosition ()

  返回当前选中项目在适配器数据中的位置。

  返回值

  返回从零开始的位置(索引)信息,没有选择条目时返回 INVALID_POSITION 

 

  public abstract View getSelectedView ()

返回值

当前选中条目对应的视图;无选中条目时返回空。 

 

  public boolean performItemClick (View view, int position, long id)

  如果定义了 OnItemClickListener 则调用它。

  参数

  view         AdapterView 中被点击的视图。

  position 视图在适配器中的索引。

  id     点击的条目的行 ID

  返回值

  如果成功调用了定义的 OnItemClickListener 则返回真;否则返回假。 

 

  public void removeAllViews ()

  该类不支持该方法,如果调用将抛出 UnsupportedOperationException 异常。

  抛出

        UnsupportedOperationException调用该方法时

 

  public void removeView (View child)

  该类不支持该方法,如果调用将抛出 UnsupportedOperationException 异常。

  参数

  child         忽略。

  抛出

         UnsupportedOperationException调用该方法时

 

  public void removeViewAt (int index)

  该类不支持该方法,如果调用将抛出 UnsupportedOperationException 异常。

  参数

         index       忽略。

  抛出

         UnsupportedOperationException调用该方法时

 

  public abstract void setAdapter (T adapter)

  设置用于为该小部件的视图提供用于显示的数据的适配器。

  参数

         adapter 用于创建视图内容的适配器。

 

  public void setEmptyView (View emptyView)

  设置适配器内容为空时显示的视图。 

 

  public void setFocusable (boolean focusable)

 

  设置该视图是否可以获取焦点。 设为假时,可以确保在触控模式中该视图不能得到焦点。

  参数

         focusable         设为真时,该视图可以得到焦点。

 

  public void setFocusableInTouchMode (boolean focusable)

  设置在触控模式下该视图是否可以获取焦点。 设为真时,可以保证视图可以得到焦点。

  参数         

             focusable        设为真时,该视图在触控模式下可以得到焦点。

 

  public void setOnClickListener (View.OnClickListener l)

  注册点击该视图时执行的回调函数。如果该视图不可点击,会将其改为可以点击的状态。

  参数

         l       事件发生时运行的回调函数。

 

  public void setOnItemClickListener (AdapterView.OnItemClickListener listener)

  注册单击 AdapterView 中的条目时执行的回调函数。

  参数

         listener  将要调用的回调。

 

  public void setOnItemLongClickListener (AdapterView.OnItemLongClickListener listener)

  注册长按 AdapterView 中的条目时执行的回调函数。

  参数

         listener  事件发生时运行的回调函数。

 

  public void setOnItemSelectedListener (AdapterView.OnItemSelectedListener listener)

  注册选中 AdapterView 中的条目时执行的回调函数。

  参数

         listener  事件发生时运行的回调函数。

 

  public abstract void setSelection (int position)

  设置当前选择条目。为了支持无障碍功能,重写该方法的子类必须首先调用父类的该方法。

  参数

         position 选择的数据条目的索引(从零开始)。

 

  六、保护方法

  protected boolean canAnimate ()

  指示视图组是否能够在首次布局后为其子视图提供动画效果的显示。

  返回值

  如果子视图可以使用动画效果则返回真,否则返回假。

 

  protected void dispatchRestoreInstanceState (SparseArray<Parcelable> container)

  了防止适配器生成的视图被解而重写。

  参数

          container    保存有之前存的状信息的 SparseArray

 

  protected void dispatchSaveInstanceState (SparseArray<Parcelable> container)

  了防止适配器生成的视图冻结而重写。

  参数

          container    保存视图 SparseArray

 

  protected void onLayout (boolean changed, int left, int top, int right, int bottom)

  该视图设置其子视图的大小及位置时调用。派生可以重写此方法,并其子布局。

  参数

  changed     是否为视图设置了新的大小和位置。

  left 于父视图的左的位置。

  top 于父视图部的位置。

  right    于父视图的右的位置。

  bottom 于父视图的底部的位置。

 

  七、补充

      补充说明

  本文由Android中文在线文档 转换而成。

  文章精选

小胖's blog

Android SDK 中文文档计划 (14) 使用AdapterView来绑定数据


转载:http://www.cnblogs.com/over140/archive/2010/12/23/1914689.html

目录
相关文章
|
8月前
|
定位技术 API 开发工具
Android 按照步骤接入百度地图API,定位显示不了解决办法
Android 按照步骤接入百度地图API,定位显示不了解决办法
227 0
|
7月前
|
API Android开发
mPaaS(移动跨平台框架)目前已经支持了Android API级别21
mPaaS(移动跨平台框架)目前已经支持了Android API级别21
107 2
|
8月前
|
API 数据库 Android开发
Android SQLite数据库中基础的增删改查操作以及API的详解
Android SQLite数据库中基础的增删改查操作以及API的详解
66 0
|
10月前
|
API Android开发
Android Activity Result API
Android Activity Result API
98 0
|
11月前
|
Java API Android开发
Sui为根应用提供Java APIs,滴API。主要提供直接使用Android APIs的能力(几乎以Java作为root的身份
Sui为根应用提供Java APIs,滴API。主要提供直接使用Android APIs的能力(几乎以Java作为root的身份,在root下启动app自己的AIDL风格的Java服务。这将使root应用程序开发变得更加容易。
142 0
|
12月前
|
缓存 Java API
Android音频API
MediaRecorder与MediaPlayer并不能算完整意义的音频API,它们只是系统音频API的封装,除了采集/播放,他们集成了编码/解码、复用/解复用等能力。它们在最底层还是调用了AudioRecorder、AudioTrack。下面主要介绍它们的几个主要的配置项。
361 0
|
Ubuntu Java Shell
Android使用FFmpeg的API库
Android使用FFmpeg的API库
293 1
|
前端开发 Android开发 算法
Android Canvas drawText实现中文垂直居中
目标: 把中文字符绘制到目标矩形的居中位置。 问题: Android的Canvas绘图,drawText里的origin是以baseline为基准的,直接以目标矩形的bottom传进drawText,字符位置会偏下。
1129 0
|
24天前
|
Java Android开发
Android 开发获取通知栏权限时会出现两个应用图标
Android 开发获取通知栏权限时会出现两个应用图标
12 0
|
2天前
|
Linux 编译器 Android开发
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
在Linux环境下,本文指导如何交叉编译x265的so库以适应Android。首先,需安装cmake和下载android-ndk-r21e。接着,下载x265源码,修改crosscompile.cmake的编译器设置。配置x265源码,使用指定的NDK路径,并在配置界面修改相关选项。随后,修改编译规则,编译并安装x265,调整pc描述文件并更新PKG_CONFIG_PATH。最后,修改FFmpeg配置脚本启用x265支持,编译安装FFmpeg,将生成的so文件导入Android工程,调整gradle配置以确保顺利运行。
19 1
FFmpeg开发笔记(九)Linux交叉编译Android的x265库