(1)computeVerticalScrollOffset():

已经向下滚动的距离,为0时表示已处于顶部。

(2)computeVerticalScrollRange():

整体的高度,注意是整体,包括在显示区域之外的。

(3)computeVerticalScrollExtent():

显示区域的高度。


图示如下:

View的canVerticalScroll函数研究和应用

对比图示很容易知道:

当Offset大于0时,可以继续下拉,当Offset等于0时,不可以。

当Range大于Offset加上Extent时,可以继续上拉,当Range等于Offset加上Extent时,不可以。

(可以看到上面判断上拉时多减了一个1,是因为计算过程中有些float和int的转换,多减个1是为了保险起见,最多也就是吃掉view一个像素的高度而已

相关文章:

  • 2021-07-14
  • 2021-10-31
  • 2021-07-12
  • 2021-07-25
  • 2022-03-02
  • 2022-12-23
  • 2022-12-23
  • 2021-10-30
猜你喜欢
  • 2022-12-23
  • 2021-12-27
  • 2022-01-19
  • 2021-08-13
  • 2021-06-19
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案