Android API 全解析(一):interface ScrollingView
介面說明:
為其實現View 新增滾動(scroll)相關的APIs
抽象函式一覽:
//第一組,水平滾動相關
int computeHorizontalScrollRange();
int computeHorizontalScrollOffset();
int computeHorizontalScrollExtent();
//第二組,垂直滾動
int computeVerticalScrollRange();
int computeVerticalScrollOffset();
int computeVerticalScrollExtent();
正名·概念網路
——理解所需明晰的概念
- 滾動條·scrollbar:略
- 範圍·range:整個滾動檢視的總長度
- 滑塊·thumb:略
- 偏移量·offset:距離起點的距離·長度
- 大小或區間·extent:可視區域的長度
正名·概念關係
- 範圍=子view長度相加+總空隙長度
- 滑塊處於頂部時,偏移量=0
- 滑塊處於底部時,偏移量+可視區域(extent)=範圍
第一組,水平滾動 相關函式
int computeHorizontalScrollRange();
水平方向上,計算滾動條表示的範圍。
範圍可以用任意單位計量,但必須與其他函式所用單位一致:
(computeHorizontalScrollOffset(); computeHorizontalScrollExtent();
)
預設範圍:是此檢視的繪圖寬度。
返回值:滾動條表示的總範圍
int computeHorizontalScrollOffset();
水平方向上,計算滾動條滑塊在滾動條範圍中的偏移量。此值用於計算滑塊在軌道中的位置
範圍所用單位需與其它函式一致。
預設偏移量:是此檢視滾動的偏移量。
返回值:滑塊的偏移量
int computeHorizontalScrollExtent();
水平方向上,計算滑塊在滾動條範圍中的大小。此值用於計算滑塊在軌道中所佔的長度(可視區域長度)
範圍所用單位需與其它函式一致。
預設大小:是此檢視的繪圖寬度。
返回值:滑塊的大小(可視區域長度)
第二組,垂直滾動 相關函式
方向改為垂直,其餘同上
例子
RecyclerView
ListView
...
通常為帶有滑動功能的ViewGroup,都實現了此介面
相關文章
- Android動畫機制全解析Android動畫
- Android fragment原始碼全解析AndroidFragment原始碼
- Android基礎之Activity全解析Android
- Go語言Interface機制解析Go
- Android記憶體優化全解析Android記憶體優化
- Android WebView 上傳檔案支援全解析AndroidWebView
- Android View的Measure測量流程全解析AndroidView
- Android 非同步載入神器Loader全解析Android非同步
- Android 非同步載入神器 Loader 全解析Android非同步
- 搞懂 API ,API 分類全知道API
- Android開發中Retrofit常見註解全解析Android
- HTTP全解析HTTP
- Vuex全解析Vue
- Choreographer全解析
- Glide4用法全解析(一)——RequestBuilderIDEUI
- [Android]中文API(一)android包下的那些類AndroidAPI
- Android原生TabLayout使用全解析,看這篇就夠了AndroidTabLayout
- Android Studio 2.3正式版釋出,官方全解析Android
- Interface(介面分享)第一節
- EBS:OM Sales Order銷售訂單【Open Interface、Open API】API
- Immer 全解析
- Sentinel 原理-全解析
- Nginx全配置解析Nginx
- PHPFPM全配置解析PHP
- 微信退款全解析
- Android面試送分題:Android面試真題解析火爆全網,建議收藏Android面試
- DOM 常用 API 解析API
- ApiSetSchema/API集-解析API
- API(Application Programming Interface,應用程式程式設計介面)APIAPP程式設計
- Android解析WindowManager(一)WindowManager體系Android
- Android APIAndroidAPI
- android——apiAndroidAPI
- JavaScript字串所有API全解密JavaScript字串API解密
- Java反射全解析(使用、原理、問題、在Android中的應用)Java反射Android
- Android面試:大廠必問之OkHttp相關問題全解析Android面試HTTP
- Android 網路程式設計(5): OkHttp2.x用法全解析Android程式設計HTTP
- JavaScript 繼承全解析JavaScript繼承
- ConstraintLayout 全解析AI