ScrollView中文API文档格式.docx

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

ScrollView中文API文档格式.docx

《ScrollView中文API文档格式.docx》由会员分享,可在线阅读,更多相关《ScrollView中文API文档格式.docx(12页珍藏版)》请在冰豆网上搜索。

ScrollView中文API文档格式.docx

publicScrollView(Contextcontext,AttributeSetattrs)

创建一个带有attrs属性的ScrollView实例。

publicScrollView(Contextcontext,AttributeSetattrs,intdefStyle)

创建一个带有attrs属性,并且指定其默认样式的ScrollView实例。

  四、公共方法

  

publicvoidaddView(Viewchild)

  添加子视图。

如果事先没有给子视图设置layout参数,会采用当前ViewGroup的默认参数来设置子视图。

  参数

  child 

所添加的子视图

  publicvoidaddView(Viewchild,intindex)

  添加子视图。

   

参数

  child 

   

index 

添加子视图的位置

  publicvoidaddView(Viewchild,intindex,ViewGroup.LayoutParamsparams)

  根据指定的layout参数添加子视图

  参数

  index 

  params 

为子视图设置的layout参数

  publicvoidaddView(Viewchild,ViewGroup.LayoutParamsparams)

  根据指定的layout参数添加子视图。

  publicbooleanarrowScroll(intdirection)

  响应点击上下箭头时对滚动条滚动的处理。

  direction 

按下的箭头所对应的方向

  返回值

  如果我们处理(消耗)了此事件返回true,否则返回false。

  publicvoidcomputeScroll()

  被父视图调用,用于必要时候对其子视图的值(mScrollX和mScrollY)进行更新。

典型的情况如:

父视图中某个子视图使用一个Scroller对象来实现滚动操作,会使得此方法被调用。

  publicbooleandispatchKeyEvent(KeyEventevent)

  发送一个key事件给当前焦点路径的下一个视图。

此焦点路径从视图树的顶层执行直到当前焦点视图。

如果此视图为焦点视图,将为自己发送。

否则,会为当前焦点路径的下一个节点发送。

此方法也会激起一个key监听器。

 

  event 

发送的key事件

  事件被处理返回true,否则返回false。

  publicvoiddraw(Canvascanvas)

  手动绘制视图(及其子视图)到指定的画布(Canvas)。

这个视图必须在调用这个函数之前做好了整体布局。

当实现一个视图时,不需要继承这个方法;

相反,你应该实现onDraw(Canvas)方法。

  canvas 

绘制视图的画布

  publicbooleanexecuteKeyEvent(KeyEventevent)

  当接收到key事件时,用户可以调用此函数来使滚动视图执行滚动,类似于处理由视图体系发送的事件。

  event 

需要执行key的事件

  publicvoidfling(intvelocityY)

  滚动视图的滑动(fling)手势。

(译者注:

如何监听android的屏幕滑动停止事件)

  velocityY 

Y方向的初始速率。

正值表示手指/光标向屏幕下方滑动,而内容将向上滚动。

  publicbooleanfullScroll(intdirection)

  对响应“home/end”短按时响应滚动处理。

此方法将视图滚动到顶部或者底部,并且将焦点置于新的可视区域的最顶部/最底部组件。

若没有适合的组件做焦点,当前的ScrollView会收回焦点。

  direction滚动方向:

FOCUS_UP表示视图向上滚动;

FOCUS_DOWN表示视图向下滚动

  若key事件被消耗(consumed)返回true,其他情况返回false。

  publicintgetMaxScrollAmount()

  当前滚动视图响应箭头事件能够滚动的最大数。

  publicbooleanisFillViewport()

  指示当前ScrollView的内容是否被拉伸以填充视图可视范围(译者注:

viewport可视范围,参见决定Scrollviewer里面Control的可视范围)。

  内容填充视图返回true,否则返回false。

  publicbooleanisSmoothScrollingEnabled()

  按箭头方向滚动时,是否显示滚动的平滑效果。

  publicbooleanonInterceptTouchEvent(MotionEventev)

  实现此方法是为了拦截所有触摸屏幕时的运动事件。

可以像处理发送给子视图的事件一样去监视这些事件,并且获取当前手势在任意点的ownership

  使用此方法时候需要注意,因为它与View.onTouchEvent(MotionEvent)有相当复杂的交互,并且前提需要正确执行View.onTouchEvent(MotionEvent)。

事件将按照如下顺序接收到:

  1. 

收到down事件

  2. 

Down事件或者由视图组的一个子视图处理,或者被用户自己的onTouchEvent()方法处理;

此处理意味你应该执行onTouchEvent()时返回true,这样才能继续看到剩下的手势(取代找一个父视图处理)。

如果onTouchEvent()返回true时,你不会收到onInterceptTouchEvent()的任何事件并且所有对触摸的处理必须在onTouchEvent()中发生。

  3. 

如果此方法返回false,接下来的事件(uptoandincludingthefinalup)将最先被传递当此,然后是目标的onTouchEvent()。

  4. 

如果返回true,将不会收到以下任何事件:

目标view将收到同样的事件但是会伴随ACTION_CANCEL,并且所有的更进一步的事件将会传递到你自己的onTouchEvent()方法中而不会再在这里出现。

  ev 

体系向下发送的动作事件

 如果将运动事件从子视图中截获并且通过onTouchEvent()发送到当前ViewGroup,返回true。

当前目标将会收到ACTION_CANCEL事件,并且不再会有其他消息传递到此。

(译者注:

onInterceptTouchEvent和onTouchEvent调用时序)

  publicbooleanonTouchEvent(MotionEventev)

  执行此方法为了处理触摸屏幕的运动事件。

  ev 

运动事件

  事件被处理返回true,其它返回false。

  publicbooleanpageScroll(intdirection)

  响应短按“pageup/down”时候对滚动的处理。

此方法将向上或者向下滚动一屏,并且将焦点置于新可视区域的最上/最下。

如果没有适合的component作为焦点,当前scrollView将收回焦点。

滚动方向:

FOCUS_UP表示向上翻一页,FOCUS_DOWN表示向下翻一页。

  此key事件被消耗(cosumed)返回true,其他返回false。

  publicvoidrequestChildFocus(Viewchild,Viewfocused)

  当父视图的一个子视图的要获得焦点时,调用此方法。

要获得焦点的父视图的子视图。

此视图包含了焦点视图。

如果没有特殊徐要求,此视图实际上就是焦点视图。

  focused 

子视图的子孙视图并且此子孙视图是真正的焦点视图

  publicbooleanrequestChildRectangleOnScreen(Viewchild,Rectrectangle,booleanimmediate)

  当组里的某个子视图需要被定位在屏幕的某个矩形范围时,调用此方法。

重载此方法的ViewGroup可确认以下几点:

  *子项目将是组里的直系子项

  *矩形将在子项目的坐标体系中

  重载此方法的ViewGroup应该支持以下几点:

  *若矩形已经是可见的,则没有东西会改变

  *为使矩形区域全部可见,视图将可以被滚动显示

  child 

发出请求的子视图

  rectangle 

子项目坐标系内的矩形,即此子项目希望在屏幕上的定位

  immediate 

设为true,则禁止动画和平滑移动滚动条

  返回值

  进行了滚动操作的这个组(group),是否处理此操作。

  publicvoidrequestLayout()

  当有改变引起当前视图重新布局时,调用此函数。

它将规划一个视图树的layout路径。

  publicvoidscrollTo(intx,inty)

  设置当前视图滚动到的位置。

此函数会引起对onScrollChanged(int,int,int,int)函数的调用并且会让视图更新。

当前版本取消了在子视图中的滚动。

  x 

滚动到的X位置

  y 

滚动到的Y位置

  publicvoidsetFillViewport(booleanfillViewport)

  设置当前滚动视图是否将内容高度拉伸以填充视图可视范围(译者注:

  fillViewport 

设置为true表示拉伸内容高度来适应视口边界;

其他设为false。

  publicvoidsetOverScrollMode(intmode)

  为视图设置over-scroll模式。

有效的over-scroll模式有OVER_SCROLL_ALWAYS(缺省值),OVER_SCROLL_IF_CONTENT_SCROLLS(只允许当视图内容大过容器时,进行over-scrolling)和OVER_SCROLL_NEVER。

只有当视图可以滚动时,此项设置才起作用。

这个函数是2.3r1中新增的,APILevel9。

关于over-scroll这里译为弹性滚动,即,参见帖子:

类似iPhone的弹性ListView滚动)

mode 

Thenewover-scrollmodeforthisview.

  publicvoidsetSmoothScrollingEnabled(booleansmoothScrollingEnabled)

  用来设置箭头滚动是否可以引发视图滚动。

  smoothScrollingEnabled 

设置箭头滚动是否可以引起内容的滚动的bool值

  publicfinalvoidsmoothScrollBy(intdx,intdy)

  类似于scrollBy(int,int),但是滚动时候是平缓的而不是立即滚动到某处。

  dx 

在X方向滚动的像素数

  dy 

在Y方向滚动的像素数

  publicfinalvoidsmoothScrollTo(intx,inty)

  类似于scrollTo(int,int),但是滚动时候是平缓的而不是立即滚动到某处。

要滚动到位置的X坐标

  y 

要滚动到位置的Y坐标

  五、受保护方法

  protectedintcomputeScrollDeltaToGetChildRectOnScreen(Rectrect)

  计算X方向滚动的总合,以便在屏幕上显示子视图的完整矩形(或者,若矩形宽度超过屏幕宽度,至少要填满第一个屏幕大小)。

  rect 

矩形

  滚动差值

  protectedintcomputeVerticalScrollOffset()

  计算垂直方向滚动条的滑块的偏移。

此值用来计算滚动条轨迹的滑块的位置。

  范围可以以任意单位表示,但是必须与computeVerticalScrollRange()和computeVerticalScrollExtent()的单位一致。

  缺省的偏移是在当前视图滚动的偏移。

  滚动条的滑块垂直方向的偏移。

  protectedintcomputeVerticalScrollRange()

  滚动视图的可滚动范围是所有子元素的高度。

  由垂直方向滚动条代表的所有垂直范围,缺省的范围是当前视图的画图高度。

  protectedfloatgetBottomFadingEdgeStrength()

  返回滚动底部的能见度。

能见度的值的范围是0.0(没有消失)到1.0(完全消失)之间。

缺省的执行返回值为0.0或者1.0,而不是他们中间的某个值。

滚动时子类需要重载这个方法来提供一个平缓的渐隐的实现。

  滚动底部能见度,值的范围在浮点数0.0f到1.0f之间。

  protectedfloatgetTopFadingEdgeStrength()

  返回滚动顶部的能见度。

  滚动顶部能见度,值的范围在浮点数0.0f到1.0f之间。

  protectedvoidmeasureChild(Viewchild,intparentWidthMeasureSpec,intparentHeightMeasureSpec)

  要求当前视图的一个子视图测量自己,同时兼顾到当前视图的MeasureSpec的要求和它的空白。

子视图必须有MarginLayoutParams。

比较复杂的工作是在getChildMeasureSpec中完成的。

需要自己测量的子视图

  parentWidthMeasureSpec 

当前视图要求的宽度

  parentHeightMeasureSpec 

  protectedvoidmeasureChildWithMargins(Viewchild,intparentWidthMeasureSpec,intwidthUsed,intparentHeightMeasureSpec,intheightUsed)

  要求当前视图的一个子视图测量自己,同时兼顾到当前视图的MeasureSpec的要求和它的空白和边界。

需要测量的子视图

  parentWidthMeasureSpec 

  widthUsed 

水平方向上由父视图使用的空白(也可能是视图的其他子视图使用的)

  heightUsed 

垂直方向上由父视图使用的空白(也可能是视图的其他子视图使用的)

  protectedvoidonLayout(booleanchanged,intl,intt,intr,intb)

  当前视图需要为子视图分配大小和位置时候调用,子类继承必须要重载此方法并调用自己子视图的layout函数。

  changed 

当前视图的新的大小或者位置

  l 

相对父视图,左边界位置

  t 

相对父视图,上边界位置

  r 

相对父视图,右边界位置

  b 

相对父视图,下边界位置

  protectedvoidonMeasure(intwidthMeasureSpec,intheightMeasureSpec)

  测量视图以确定其内容宽度和高度。

此方法被measure(int,int)调用。

需要被子类重写以提供对其内容准确高效的测量。

  约定:

当重写此方法时,你必须调用setMeasuredDimension(int,int)来保存当前视图view的宽度和高度。

不成功调用此方法将会导致一个IllegalStateException异常,是由measure(int,int)抛出。

所以调用父类的onMeasure(int,int)方法是必须的。

  父类的实现是以背景大小为默认大小,除非MeasureSpec(测量细则)允许更大的背景。

子类可以重写onMeasure(int,int)以对其内容提供更佳的尺寸。

  如果此方法被重写,那么子类的责任是确认测量高度和测量宽度要大于视图view的最小宽度和最小高度(getSuggestedMinimumHeight()和getSuggestedMinimumWidth()),使用这两个方法可以取得最小宽度和最小高度。

  widthMeasureSpec 

受主窗口支配的水平空间要求。

这个需求通过View.MeasureSpec.进行编码。

     heightMeasureSpec 

受主窗口支配的垂直空间要求。

    protectedvoidonOverScrolled(intscrollX,intscrollY,booleanclampedX,booleanclampedY)

  被overScrollBy(int,int,int,int,int,int,int,int,boolean)调用,来对一个over-scroll操作的结果进行响应。

这个函数是2.3r1中新增的,APILevel9)

  scrollX 

新的X滚动像素值

  scrollY 

新的Y滚动像素值

  clampedX 

当scrollX被over-scroll的边界限制时,值为true

  clampedY 

当scrollY被over-scroll的边界限制时,值为true

  protectedbooleanonRequestFocusInDescendants(intdirection,RectpreviouslyFocusedRect)

  当在滚动视图的子视图中查找焦点视图时,需要注意不要将焦点设置在滚动出屏幕外的控件上。

此方法会比执行缺省的ViewGroup代价高,否则此行为也会设置为缺省

  direction指定下列常量之一:

FOCUS_UP,FOCUS_DOWN,FOCUS_LEFT,FOCUS_RIG

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

当前位置:首页 > IT计算机 > 电脑基础知识

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

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