鴻蒙UI開(kāi)發(fā)之滾動(dòng)組件overscroll-decor安裝和使用介紹
簡(jiǎn)介
鴻蒙UI開(kāi)發(fā)之滾動(dòng)組件overscroll-decor是一個(gè)開(kāi)源庫(kù),旨在為開(kāi)發(fā)者提供一種簡(jiǎn)單、靈活的方式來(lái)實(shí)現(xiàn)各種過(guò)度滾動(dòng)(overscroll)動(dòng)畫(huà)效果,提升用戶(hù)的交互體驗(yàn)。該庫(kù)提供了類(lèi)似于iOS的過(guò)度滾動(dòng)效果,幾乎可以應(yīng)用于所有Android本機(jī)可滾動(dòng)視圖,如RecyclerView、ListView、GridView、ScrollView等

功能特點(diǎn)
- 兼容性廣:支持Android API 14 及以上版本。
- 輕量級(jí):體積小且無(wú)額外依賴(lài),不影響應(yīng)用性能。
- 可擴(kuò)展性強(qiáng):允許開(kāi)發(fā)者完全自定義過(guò)度滾動(dòng)的行為和視覺(jué)效果。
- 社區(qū)支持:作為開(kāi)源項(xiàng)目,有活躍的社區(qū)和持續(xù)的更新維護(hù)。
下載安裝
ohpm install @ohos/overscroll-decor
主要接口列表
| 接口 | 方法說(shuō)明 |
|---|---|
| getHeight() | 獲取組件高度 |
| setHeight() | 設(shè)置組件高度 |
| getWidth() | 獲取組件寬度 |
| setWidth() | 設(shè)置組件寬度 |
| getMargin() | 獲取組件邊緣度 |
| setMargin() | 設(shè)置組件邊緣度 |
| getOrientation() | 獲取組件方向 |
| setOrientation() | 設(shè)置組件方向 |
| isScrollBar() | 判斷是否是滾動(dòng)條 |
| setScrollBar() | 設(shè)置滾動(dòng)條 |
| isOverScrollBounceEffect() | 是否有滾動(dòng)反彈效果 |
| setOverScrollBounceEffect() | 設(shè)置滾動(dòng)反彈效果 |
| isUpOverScroll() | 是否向上滾動(dòng) |
| setUpOverScroll() | 設(shè)置向上滾動(dòng) |
| getOffsetX() | 獲取離開(kāi)X的值 |
| setOffsetX() | 設(shè)置離開(kāi)X的值 |
| getOffsetY() | 獲取離開(kāi)Y的值 |
| setOffsetY() | 設(shè)置離開(kāi)Y的值 |
| getTextColor() | 獲取字體顏色 |
| setTextColor() | 設(shè)置字體顏色 |
| getDragColorTop() | 獲取拖動(dòng)頂部顏色 |
| setDragColorTop() | 設(shè)置拖動(dòng)頂部顏色 |
1.OpenHarmony開(kāi)發(fā)基礎(chǔ) 2.OpenHarmony北向開(kāi)發(fā)環(huán)境搭建 3.鴻蒙南向開(kāi)發(fā)環(huán)境的搭建 4.鴻蒙生態(tài)應(yīng)用開(kāi)發(fā)白皮書(shū)V2.0 & V3.0 5.鴻蒙開(kāi)發(fā)面試真題(含參考答案) 6.TypeScript入門(mén)學(xué)習(xí)手冊(cè) 7.OpenHarmony 經(jīng)典面試題(含參考答案) 8.OpenHarmony設(shè)備開(kāi)發(fā)入門(mén)【最新版】 9.沉浸式剖析OpenHarmony源代碼 10.系統(tǒng)定制指南 11.【OpenHarmony】Uboot 驅(qū)動(dòng)加載流程 12.OpenHarmony構(gòu)建系統(tǒng)--GN與子系統(tǒng)、部件、模塊詳解 13.ohos開(kāi)機(jī)init啟動(dòng)流程 14.鴻蒙版性能優(yōu)化指南 .......
使用說(shuō)明
提供滾動(dòng)容器視圖,使用方法類(lèi)似,以GridViewDemo為例
1、初始化:實(shí)例化OverScrollDecor.Model 對(duì)象
private model: OverScrollDecor.Model = new OverScrollDecor.Model()
2、屬性設(shè)置:通過(guò)Model類(lèi)對(duì)象設(shè)置UI屬性來(lái)自定義所需風(fēng)格
private aboutToAppear() {
this.model
.setUpOverScroll(true)
.setOrientation(OverScrollDecor.ORIENTATION.VERTICAL)
.setOverScrollBounceEffect(true)
.setScrollBar(true)
.setWidth("100%")
.setHeight("80%")
}
3、子組件繪制:
@Builder SpecificChild() {
Column({ space: 10 }) {
......
}.width('100%')
}
4、界面繪制:
build() {
Stack({ alignContent: Alignment.TopStart }) {
......
OverScrollDecor({ model: this.model!!, child: () => { this.SpecificChild() } })
......
}
屬性說(shuō)明
- 滾動(dòng)組件高:默認(rèn)px2vp(2340)
mHeight: number | string = px2vp(2340) - 滾動(dòng)組件寬:默認(rèn)px2vp(lpx2px(720))
mWidth: number | string = px2vp(lpx2px(720)) - 滾動(dòng)組件外邊距:默認(rèn)16
mMargin: number = 16 - 組件滾動(dòng)方向:默認(rèn)VERTICAL
mOrientation: ORIENTATION = 0 - 滾動(dòng)條設(shè)置:默認(rèn)true
mScrollBar: boolean = true - 邊緣滾動(dòng)效果設(shè)置:默認(rèn)false
mOverScrollBounceEffect: boolean = false - 滾動(dòng)設(shè)置:默認(rèn)true
mUpOverScroll: boolean = true
到此這篇關(guān)于鴻蒙UI開(kāi)發(fā)之滾動(dòng)組件overscroll-decor安裝和使用介紹的文章就介紹到這了,更多相關(guān)鴻蒙UI開(kāi)發(fā)overscroll-decor內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
ROS機(jī)器人底盤(pán)坐標(biāo)像素變換操作方法
ROS最常用到的三個(gè)坐標(biāo)系是:map、odom、base_link,這篇文章主要介紹了ROS機(jī)器人底盤(pán)坐標(biāo)像素變換,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-01-01
chatgpt成功解決Access denied 1020錯(cuò)誤問(wèn)題(最新推薦)
從前兩天網(wǎng)上開(kāi)始一直開(kāi)著的chatgpt網(wǎng)頁(yè)突然打不開(kāi)了,提示1020錯(cuò)誤,嘗試換了不同代理軟件或者代理地點(diǎn)仍然無(wú)法解決,這篇文章主要介紹了chatgpt成功解決Access denied 1020錯(cuò)誤,需要的朋友可以參考下2023-05-05
VScode任務(wù)配置(task.json與launch.json)及異常詳解
這篇文章主要介紹了VScode任務(wù)配置(task.json與launch.json)及異常的相關(guān)資料,tasks.json用于配置自動(dòng)化任務(wù),如編譯、構(gòu)建、執(zhí)行腳本等,而launch.json用于配置調(diào)試器,需要的朋友可以參考下2025-05-05
ChatGpt無(wú)法訪問(wèn)或錯(cuò)誤碼1020的幾種解決方案
ChatGPT是一種語(yǔ)言模型,它被訓(xùn)練來(lái)對(duì)對(duì)話進(jìn)行建模,下面這篇文章主要給大家介紹了關(guān)于ChatGpt無(wú)法訪問(wèn)或錯(cuò)誤碼1020的幾種解決方案,文中介紹的非常詳細(xì),需要的朋友可以參考下2023-02-02
Windows10使用Anaconda安裝Tensorflow-gpu的教程詳解
Anaconda是一個(gè)方便的python包管理和環(huán)境管理軟件,一般用來(lái)配置不同的項(xiàng)目環(huán)境。這篇文章主要介紹了Windows10使用Anaconda安裝Tensorflow-gpu的教程,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-02-02
Notepad++文本比較插件Compare詳解(最新免費(fèi))
Notepad++是一款強(qiáng)大的文本編輯器,它提供了文件對(duì)比功能,可以幫助我們快速找出兩個(gè)文件之間的差異點(diǎn),這篇文章主要介紹了Notepad++文本比較插件Compare詳解(最新免費(fèi)),感興趣的朋友一起看看吧2024-01-01

