LongPressGesture
用于觸發長按手勢事件,觸發長按手勢的最少手指數為1,最短長按時間為500毫秒。
說明:
開發前請熟悉鴻蒙開發指導文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
從API Version 7開始支持。后續版本如有新增內容,則采用上角標單獨標記該內容的起始版本。
接口
LongPressGesture(value?: { fingers?: number, repeat?: boolean, duration?: number })
參數:
參數名稱 | 參數類型 | 必填 | 參數描述 |
---|---|---|---|
fingers | number | 否 | 觸發長按的最少手指數,最小為1指, 最大取值為10指。默認值:1 |
repeat | boolean | 否 | 是否連續觸發事件回調。默認值:false |
duration | number | 否 | 觸發長按的最短時間,單位為毫秒(ms)。默認值:500**說明:**設置小于等于0時,按照默認值500處理。 |
事件
名稱 | 功能描述 |
---|---|
onAction(event:(event?:[GestureEvent]) => void) | LongPress手勢識別成功回調。 |
onActionEnd(event:(event?:[GestureEvent]) => void) | LongPress手勢識別成功,手指抬起后觸發回調。 |
onActionCancel(event: () => void) | LongPress手勢識別成功,接收到觸摸取消事件觸發回調。HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿 |
示例
// xxx.ets
@Entry
@Component
struct LongPressGestureExample {
@State count: number = 0
build() {
Column() {
Text('LongPress onAction:' + this.count).fontSize(28)
// 單指長按文本觸發該手勢事件
.gesture(
LongPressGesture({ repeat: true })
// 由于repeat設置為true,長按動作存在時會連續觸發,觸發間隔為duration(默認值500ms)
.onAction((event?: GestureEvent) = > {
if (event && event.repeat) {
this.count++
}
})
// 長按動作一結束觸發
.onActionEnd(() = > {
this.count = 0
})
)
}
.height(200)
.width(300)
.padding(20)
.border({ width: 3 })
.margin(30)
}
}
審核編輯 黃宇
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
API
+關注
關注
2文章
1502瀏覽量
62080 -
鴻蒙
+關注
關注
57文章
2358瀏覽量
42876
發布評論請先 登錄
相關推薦
鴻蒙ArkTS聲明式開發:跨平臺支持列表【顯隱控制】 通用屬性
控制當前組件顯示或隱藏。注意,即使組件處于隱藏狀態,在頁面刷新時仍存在重新創建過程,因此當對性能有嚴格要求時建議使用[條件渲染]代替。 默認值:Visibility.Visible 從API version 9開始,該接口支持在ArkTS卡片中使用。
鴻蒙ArkTS聲明式開發:跨平臺支持列表【形狀裁剪】 通用屬性
參數為相應類型的組件,按指定的形狀對當前組件進行裁剪;參數為boolean類型時,設置是否按照父容器邊緣輪廓進行裁剪。 默認值:false 從API version 9開始,該接口支持在ArkTS卡片中使用。
評論