PinchGesture
用于觸發(fā)捏合手勢,觸發(fā)捏合手勢的最少手指為2指,最大為5指,最小識別距離為3vp。
說明:
開發(fā)前請熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
從API Version 7開始支持。后續(xù)版本如有新增內(nèi)容,則采用上角標(biāo)單獨(dú)標(biāo)記該內(nèi)容的起始版本。
接口
PinchGesture(value?: { fingers?: number, distance?: number })
參數(shù)名稱 | 參數(shù)類型 | 必填 | 參數(shù)描述 |
---|---|---|---|
fingers | number | 否 | 觸發(fā)捏合的最少手指數(shù), 最小為2指,最大為5指。 默認(rèn)值:2 |
distance | number | 否 | 最小識別距離,單位為vp。 默認(rèn)值:3**說明:**當(dāng)識別距離的值小于等于0時,會被轉(zhuǎn)化為默認(rèn)值。 |
事件
名稱 | 功能描述 |
---|---|
onActionStart(event:(event?: [GestureEvent]) => void) | Pinch手勢識別成功回調(diào)。 |
onActionUpdate(event:(event?: [GestureEvent]) => void) | Pinch手勢移動過程中回調(diào)。 |
onActionEnd(event:(event?: [GestureEvent]) => void) | Pinch手勢識別成功,手指抬起后觸發(fā)回調(diào)。 |
onActionCancel(event: () => void) | Pinch手勢識別成功,接收到觸摸取消事件觸發(fā)回調(diào)。HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿 |
示例
// xxx.ets
@Entry
@Component
struct PinchGestureExample {
@State scaleValue: number = 1
@State pinchValue: number = 1
@State pinchX: number = 0
@State pinchY: number = 0
build() {
Column() {
Column() {
Text('PinchGesture scale:n' + this.scaleValue)
Text('PinchGesture center:n(' + this.pinchX + ',' + this.pinchY + ')')
}
.height(200)
.width(300)
.padding(20)
.border({ width: 3 })
.margin({ top: 100 })
.scale({ x: this.scaleValue, y: this.scaleValue, z: 1 })
// 三指捏合觸發(fā)該手勢事件
.gesture(
PinchGesture({ fingers: 3 })
.onActionStart((event?: GestureEvent) = > {
console.info('Pinch start')
})
.onActionUpdate((event?: GestureEvent) = > {
if (event) {
this.scaleValue = this.pinchValue * event.scale
this.pinchX = event.pinchCenterX
this.pinchY = event.pinchCenterY
}
})
.onActionEnd(() = > {
this.pinchValue = this.scaleValue
console.info('Pinch end')
})
)
}.width('100%')
}
}
審核編輯 黃宇
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報(bào)投訴
-
鴻蒙
+關(guān)注
關(guān)注
57文章
2382瀏覽量
42943
發(fā)布評論請先 登錄
相關(guān)推薦
HarmonyOS/OpenHarmony應(yīng)用開發(fā)-ArkTS的聲明式開發(fā)范式
基于ArkTS的聲明式開發(fā)范式的方舟開發(fā)框架是一套開發(fā)極簡、高性能、
發(fā)表于 01-17 15:09
鴻蒙開發(fā)之ArkTS基礎(chǔ)知識
一、ArkTS簡介 ArkTS是HarmonyOS優(yōu)選的主力應(yīng)用開發(fā)語言。它在TypeScript(簡稱TS)的基礎(chǔ)上,匹配了鴻蒙的ArkUI框架,擴(kuò)展了
鴻蒙ArkTS聲明式開發(fā):跨平臺支持列表【顯隱控制】 通用屬性
控制當(dāng)前組件顯示或隱藏。注意,即使組件處于隱藏狀態(tài),在頁面刷新時仍存在重新創(chuàng)建過程,因此當(dāng)對性能有嚴(yán)格要求時建議使用[條件渲染]代替。 默認(rèn)值:Visibility.Visible 從API version 9開始,該接口支持在ArkTS卡片中使用。
鴻蒙ArkTS聲明式開發(fā):跨平臺支持列表【形狀裁剪】 通用屬性
參數(shù)為相應(yīng)類型的組件,按指定的形狀對當(dāng)前組件進(jìn)行裁剪;參數(shù)為boolean類型時,設(shè)置是否按照父容器邊緣輪廓進(jìn)行裁剪。 默認(rèn)值:false 從API version 9開始,該接口支持在ArkTS卡片中使用。
鴻蒙ArkTS聲明式開發(fā):跨平臺支持列表【菜單控制】 通用屬性
為組件綁定彈出式菜單,彈出式菜單以垂直列表形式顯示菜單項(xiàng),可通過長按、點(diǎn)擊或鼠標(biāo)右鍵觸發(fā)。
鴻蒙ArkTS聲明式開發(fā):跨平臺支持列表LongPressGesture之基礎(chǔ)手勢
用于觸發(fā)長按手勢事件,觸發(fā)長按手勢的最少手指數(shù)為1,最短長按時間為500毫秒。
鴻蒙ArkTS聲明式開發(fā):跨平臺支持列表RotationGesture之基礎(chǔ)手勢
用于觸發(fā)旋轉(zhuǎn)手勢事件,觸發(fā)旋轉(zhuǎn)手勢的最少手指為2指,最大為5指,最小改變度數(shù)為1度。
評論