Android 中文 API123AbsListView.docx

上传人:b****6 文档编号:8182797 上传时间:2023-01-29 格式:DOCX 页数:22 大小:27.04KB
下载 相关 举报
Android 中文 API123AbsListView.docx_第1页
第1页 / 共22页
Android 中文 API123AbsListView.docx_第2页
第2页 / 共22页
Android 中文 API123AbsListView.docx_第3页
第3页 / 共22页
Android 中文 API123AbsListView.docx_第4页
第4页 / 共22页
Android 中文 API123AbsListView.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

Android 中文 API123AbsListView.docx

《Android 中文 API123AbsListView.docx》由会员分享,可在线阅读,更多相关《Android 中文 API123AbsListView.docx(22页珍藏版)》请在冰豆网上搜索。

Android 中文 API123AbsListView.docx

Android中文API123AbsListView

Android中文API(123)——AbsListView

前言

  本章内容是Android.widget.AbsListView,版本为Android2.3r1,翻译来自"cnmahj",欢迎大家访问他的博客:

声明

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

    移动社区:

    Android中文翻译组:

http:

//goo.gl/6vJQl

AbsListView

译者署名:

cnmahj

版本:

Android2.3r1

结构

继承关系

publicabstractclassAbsListViewextendsAdapterView

implementsTextWatcherViewTreeObserver.OnGlobalLayoutListenerViewTreeObserver.OnTouchModeChangeListenerFilter.FilterListener

Java.lang.Object

android.view.View

android.view.ViewGroup

android.widget.AdapterView

android.widget.AbsListView

类概述

用于实现条目的虚拟列表的基类.这里的列表没有空间的定义。

例如,该类的子类可以以网格的形式、走马灯的形式显示,或者作为堆栈等等。

嵌套类

  classAbsListView.LayoutParams

AbsListView扩展了LayoutParams以提供空间来保存试图类型。

interfaceAbsListView.OnScrollListener

为了在列表或网格滚动时执行回调函数而定义的接口。

interfaceAbsListView.RecyclerListener

RecyclerListener是用于接收视图被移动到待回收堆中时的消息的监听器.

XML属性

属性名称

描述

android:

cacheColorHint

指示该列表总是在固定的单色、不透明的背景下绘制。

这允许列表优化其绘制过程

android:

drawSelectorOnTop

如果设为真,选择器将绘制在选中条目的上层。

否则绘制在下层。

默认为假

android:

fastScrollEnabled

允许使用快速滚动滑块,可以通过拖动该滑块在列表中快速滚动

android:

listSelector

用于在列表中指示当前选中条目的可绘制对象

android:

scrollingCache

当为真时,列表滚动使用绘图缓存。

该选项使渲染更快,但占用更多的内存。

默认值为真

android:

smoothScrollbar

为真时,列表会使用更精确的基于条目在屏幕上的可见像素高度的计算方法。

默认该属性为真,如果你的适配器需要绘制可变高的条目,他应该设为假。

当该属性为真时,你在适配器在显示变高条目时,滚动条的把手会在滚动的过程中改变大小。

当设为假时,列表只使用适配器中的条目数和屏幕上的可见条目来决定滚动条的属性

android:

stackFromBottom

用于ListView和GridView,指示他们的内容栈从底部开始

android:

textFilterEnabled

设为真时,列表会过滤根据用户的要求,过滤结果集。

列表的适配器必须实现了Filterable接口,才能使其可用

android:

transcriptMode

设置列表的跳转模式。

在跳转模式下,当加入新条目时,列表会滚动到底部,使新条目可见

常量

  intTRANSCRIPT_MODE_ALWAYS_SCROLL

无视当前可见条目,总是自动滚动到列表的底部。

  intTRANSCRIPT_MODE_DISABLED

禁用跳转模式。

  intTRANSCRIPT_MODE_NORMAL

仅当最后的条目在屏幕上可见,并且收到数据集变更消息时列表将自动滚动到底部。

公共方法

publicvoidaddTouchables(ArrayListviews)

想views添加可触控视图,该可触控视图是该视图的后代(如果该视图可触控,也可以添加该视图)。

参数

views现在为止的可触控视图。

publicvoidafterTextChanged(Editables)

为关联到文本过滤器的文本监视器准备的。

什么也不做。

publicvoidbeforeTextChanged(CharSequences,intstart,intcount,intafter)

为关联到文本过滤器的文本监视器准备的。

什么也不做。

publicbooleancheckInputConnectionProxy(Viewview)

测试是否为了过滤信息,为文本编辑器使用了输入连接代理,该操作允许使用代理。

参数

view生成InputMethodManager调用的视图。

返回值

允许调用返回true,拒绝返回false。

publicvoidclearTextFilter()

清楚文本过滤器。

publicvoiddraw(Canvascanvas)

在指定的画布上手动绘制视图(及其子视图).调用该函数之前,视图必须已经完成整个布局过程。

当实现一个视图时,不需要继承这个方法;而是实现onDraw(Canvas)方法。

参数

canvas要绘制视图的画布

publicAbsListView.LayoutParamsgenerateLayoutParams(AttributeSetattrs)

返回一组基于提供的属性集合的布局参数集合.

参数

attrs用于生成布局参数的属性集.

返回值

ViewGroup.LayoutParams或其子类的实例.

publicintgetCacheColorHint()

如果该值为非零,表示该视图总是在固定的、单色、不透明的背景上绘制。

返回值

缓存颜色。

publicvoidgetFocusedRect(Rectr)

在视图拥有焦点时,用户将焦点移向其他视图,可以使用该方法取得下一个视图的矩形填充区域。

默认情况,该矩形为视图的getDrawingRect(Rect)。

当然,如果你的视图维护着内部选中状态,比如游标、选中的行或列,你应该重写该方法,并返回特定的矩形。

参数

  r要填充的矩形,使用视图的坐标系。

publicintgetListPaddingBottom()

列表内边距是普通视图内边距和选择器内边距的最大值。

返回值

列表底部的内边距。

参见

getPaddingBottom()

getSelector()

publicintgetListPaddingLeft()

列表内边距是普通视图内边距和选择器内边距的最大值。

返回值

列表左侧的内边距。

参见

getPaddingLeft()

getSelector()

publicintgetListPaddingRight()

列表内边距是普通视图内边距和选择器内边距的最大值。

返回值

列表右侧的内边距。

参见

getPaddingRight()

getSelector()

publicintgetListPaddingTop()

列表内边距是普通视图内边距和选择器内边距的最大值。

返回值

列表顶部的内边距。

参见

getPaddingTop()

getSelector()

publicViewgetSelectedView()

返回值

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

publicDrawablegetSelector()

返回用于在列表中绘制选择器的可绘制对象。

返回值

用于显示选择器的可绘制对象。

publicintgetSolidColor()

如果你的视图总是在单色背景上绘制,并且需要渐变的边时,重载该函数。

返回非零的颜色值,使视图系统可以优化渐进边的绘制。

返回非零颜色值时,阿尔法通道应设为0xFF。

返回值

该视图的单色背景色;为零表示不是单色。

publicCharSequencegetTextFilter()

如果存在,则返回列表的文本过滤器。

返回值

文本的列表过滤器;如果过滤器未启用返回空。

publicintgetTranscriptMode()

返回当前跳转模式。

返回值

TRANSCRIPT_MODE_DISABLED、TRANSCRIPT_MODE_NORMAL或者TRANSCRIPT_MODE_ALWAYS_SCROLL

publicbooleanhasTextFilter()

返回列表视图是否具有文本过滤器。

publicvoidinvalidateViews()

使所有的视图重新构建并重绘。

publicbooleanisFastScrollEnabled()

返回当前快速滚动特性的状态。

返回值

如果快速滚动已启用返回真,否则返回假。

参见

setFastScrollEnabled(boolean)

publicbooleanisScrollingCacheEnabled()

指示滚动时是否使用子视图的绘图缓存。

默认为使用绘图缓存,这会占用更多的内存。

返回值

如果启用了滚动缓存返回真,否则返回假。

参见

setScrollingCacheEnabled(boolean)

setDrawingCacheEnabled(boolean)

publicbooleanisSmoothScrollbarEnabled()

返回平滑滚动特性的当前状态。

返回值

如果平滑滚动启用返回真,否则返回假。

参见

setSmoothScrollbarEnabled(boolean)

publicbooleanisStackFromBottom()

指示该视图的内容是否为向上插入,或者说栈底在底边。

返回值

如果该视图内容以底边为栈底返回真,否则返回假。

publicbooleanisTextFilterEnabled()

指示该视图是否启用了输入过滤。

返回值

如启用了输入过滤则为真,否则为假。

参见

setTextFilterEnabled(boolean)

Filterable

publicInputConnectiononCreateInputConnection(EditorInfooutAttrs)

返回用于编辑过滤文本的InputConnection对象。

参数

outAttrs链接使用的属性信息。

publicvoidonFilterComplete(intcount)

过滤操作结束的通知。

参数

count过滤结果的数量

publicvoidonGlobalLayout()

视图树的可视性或全局布局状态发生变化时执行的回调函数。

publicbooleanonInterceptTouchEvent(MotionEventev)

使用此方法可以拦截所有触摸屏动作引发的事件.这意味着你可以监视分派给子项的事件,并且可以在当前手势的任何一点获得其控制权。

使用此方法需谨慎.因为它与View.onTouchEvent(MotionEvent)有相当复杂的交互。

使用它需要像该方法实现一样正确的实现该方法。

触控事件是按如下顺序接收的:

✉首先该函数收到按下事件

✉按下事件会在视图组的子视图以及本视图的onTouchEvent()方法中处理.这意味着若要处理之后的手势(代替父视图来处理该事件),你应该实现onTouchEvent()方法并返回真.另外,如果你的onTouchEvent()方法返回真,onInterceptTouchEvent()方法将不会收到接下来发生的事件,整个触控处理必须在onTouchEvent()方法中进行.

✉如果该方法返回假,接下来的每个事件(直到最后的抬起事件)都会首先由该函数来处理,之后传给目标对象的onTouchEvent()方法.

✉如果该函数返回真,你不会收到接下来的任何事件:

目标视图会接收到该事件,但其动作被标记为ACTION_CANCEL,之后的事件都会交由你的onTouchEvent()方法来处理,不再出现在该方法中。

参数

ev沿着层次结构向下分派的动作事件。

返回值

若将动作事件从子视图中截获并通过onTouchEvent()将他们分派给当前视图组,则返回真。

当前目标将收到ACTION_CANCEL事件,并且不再会有其他消息传入该函数。

publicbooleanonKeyDown(intkeyCode,KeyEventevent)

KeyEvent.Callback.onKeyMultiple()的默认实现.如果视图可用并可按,当按下KEYCODE_DPAD_CENTER或KEYCODE_ENTER时执行视图的按下事件。

参数

keyCode表示按下的键的、在KEYCODE_ENTER中定义的键盘代码。

eventKeyEvent对象,定义了按钮动作。

返回值

如果处理了事件,返回真。

如果允许下一个事件接受器处理该事件,可以返回假。

publicbooleanonKeyUp(intkeyCode,KeyEventevent)

KeyEvent.Callback.onKeyMultiple()的默认实现.当释放KEYCODE_DPAD_CENTER或KEYCODE_ENTER时执行视图的单击事件。

参数

keyCode表示按下的键的、在KEYCODE_ENTER中定义的键盘代码。

eventKeyEvent对象,定义了按钮动作。

返回值

如果处理了事件,返回真.如果允许下一个事件接受器处理该事件,可以返回假。

publicvoidonRestoreInstanceState(Parcelablestate)

允许视图重新应用之前由onSaveInstanceState()保存的内部状态的回调函数。

该方法得state参数不可能为空。

参数

state之前由onSaveInstanceState()返回的状态信息。

publicParcelableonSaveInstanceState()

允许视图保存其内部状态的回调函数,以便于之后使用相同状态创建新实例.该状态应该只包含非持久的或者之后不可重现的信息.例如,你不能保存视图在屏幕上的位置,因为在创建新视图时,会在视图得层次结构中重新计算它的位置。

这里是一些可以保存的信息的例子:

文本框中当前光标的位置(通常不是文字内容本身,因为文字内容一般保存在内容提供者或其他持久的储存器中),列表视图中的当前选中条目等等。

返回值

返回包含视图当前状态的Parcelable对象,当不想保存状态时返回空。

默认实现返回空。

publicvoidonTextChanged(CharSequences,intstart,intbefore,intcount)

为关联到文本过滤器的文本监视器准备的。

当文本变更时,执行实际的过滤操作,并维护弹出显示中的当前输入的过滤文本隐藏和显示。

publicbooleanonTouchEvent(MotionEventev)

实现该方法来处理触屏事件。

参数

ev触屏事件.

返回值

如果事件已经处理返回真;否则返回假。

publicvoidonTouchModeChanged(booleanisInTouchMode)

触摸模式发生改变时调用的回调函数。

参数

isInTouchMode如果视图结构当前处于触摸模式,参数为真;否则为假。

publicvoidonWindowFocusChanged(booleanhasWindowFocus)

包含该视图的窗体获得或失去焦点时调用该函数。

注意,该动作是与视图的焦点分开的:

为了受到键盘事件,你的视图及其窗口都必须拥有焦点。

如果有窗口覆盖在你的窗口上方并得到输入焦点,你的窗口会失去焦点,但是视图的焦点保持不变。

参数

hasWindowFocus如果包含该视图的窗口拥有焦点,值为真;否则为假。

publicintpointToPosition(intx,inty)

将坐标点转换为列表中的位置。

参数

x本地坐标系的X。

y本地坐标系的Y。

返回值

包含指定点的条目的位置,如果点不再任何条目上返回INVALID_POSITION。

publiclongpointToRowId(intx,inty)

将坐标点转换为列表条目的行ID。

参数

x本地坐标系的X。

y本地坐标系的Y。

返回值

包含指定点的条目的条目的行ID;如果点不再任何条目上返回INVALID_ROW_ID。

publicvoidreclaimViews(Listviews)

将该AbsListView中的所有视图(不包含头尾视图)移到提供的列表中。

这些视图包括显示在屏幕上的以及放入AbsListView内部视图回收器的视图。

参数

views用于填充视图的列表。

publicvoidrequestLayout()

当某些变更导致视图的布局失效时调用该方法.该方法按照视图树的顺序调用。

publicvoidsetCacheColorHint(intcolor)

当color的值不为0时,此值表示的颜色将提示使用者,列表正在一片单色不透明的背景上被画出。

当color的值非零时,示意该列表使用实心、单色不透明的背景,可以缓存背景色。

参数

color背景色。

publicvoidsetDrawSelectorOnTop(booleanonTop)

控制选择高亮可绘制对象应该在条目的前面绘制还是在后面绘制。

参数

onTop如果为真,选择器的高亮在条目上面显示。

默认值为假。

相关XML属性

android:

drawSelectorOnTop

publicvoidsetFastScrollEnabled(booleanenabled)

允许使用快速滚动手柄,可以通过拖动该手柄在列表中快速滚动。

若要显示字母预览并在其间跳转,与列表关联的适配器应该实现SectionIndexer接口。

参数

enabled是否允许快速滚动。

参见

SectionIndexer

isFastScrollEnabled()

publicvoidsetFilterText(StringfilterText)

为文本过滤器设置初始值。

参数

filterText过滤器使用的文本。

参见

setTextFilterEnabled(boolean)

publicvoidsetOnScrollListener(AbsListView.OnScrollListenerl)

设置每次列表滚动时收到消息的监听器。

参数

l滚动监听器。

publicvoidsetOverScrollMode(intmode)

为视图设置过滚动模式。

有效的过滚动模式有OVER_SCROLL_ALWAYS(默认值)、OVER_SCROLL_IF_CONTENT_SCROLLS(视图内容大于容器时允许过滚动)、和OVER_SCROLL_NEVER.只有当视图可以滚动时,才可以设置视图的过滚动模式.

参数

mode视图的新的过滚动模式

publicvoidsetRecyclerListener(AbsListView.RecyclerListenerlistener)

设置当视图被放入回收器等待被重用时得到通知的回收监听器。

该监听器用于释放关联到视图的资源。

参数

listener视图被放入回收器时收到通知的回收监听器。

参见

AbsListView.RecycleBin

AbsListView.RecyclerListener

publicvoidsetScrollIndicators(Viewup,Viewdown)

(译者注:

用途参见这里:

howtodefinescrollbar'sthumbDrawablesfromjavacode?

publicvoidsetScrollingCacheEnabled(booleanenabled)

启用或停止在滚动时使用子视图的绘图缓存。

默认为使用绘图缓存,这会占用更多的内存。

当启用滚动缓存时,首次滚动后会保留缓存。

你可以通过调用setChildrenDrawingCacheEnabled(boolean)手动清除缓存。

参数

enabled启用滚动缓存时为真,否则为假。

参见

isScrollingCacheEnabled()

setDrawingCacheEnabled(boolean)

publicvoidsetSelector(Drawablesel)

设置用于将当前选择条目设置为高亮的可绘制对象。

publicvoidsetSelector(intresID)

设置用于将当前选择条目设置为高亮的可绘制对象。

参数

resID作为选择高亮的可绘制对象资源。

相关XML属性

android:

listSelector

publicvoidsetSmoothScrollbarEnabled(booleanenabled)

当平滑滚动启用时,滚动条把手的位置和大小基于可见条目的可见像素数来计算。

该处里假定所有列表条目具有相同的高度。

如果你使用条目高度不同的类表,滚动条会在用户滚动过程中改变大小。

为了避免这种情况,应该禁用该特性。

当平滑滚动被禁用后,滚动条把手的大小和位置只是基于适配器中的条目数,以及适配器中的可见条目来确定。

这样可以为使用可变高条目列表的用户,提供稳定的滚动条。

参数

enabled是否启用平滑滚动。

相关XML属性

android:

smoothScrollbar

参见

setSmoothScrollbarEnabled(boolean)

publicvoidsetStackFromBottom(booleanstackFromBottom)

当栈从底部开始设置为真时,列表从底部开始向上填充视图。

参数

stackFromBottom为真时,视图内容固定于底部;为假时,固定在顶部。

publicvoidsetTextFilterEnab

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 理化生

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1