示例参考如下:ImageGesture.ets@Component export struct ImageGesture { @State visible: Visibility = Visibility.None build() { Stack() { Row() { Column() { Image($r('app.media.icon')) .width(100) .height(100) .onClick(() => { console.log("hit me!") if ( this.visible== Visibility.Visible) { this.visible = Visibility.None } else { this.visible = Visibility.Visible } }) } .width('100%') .justifyContent(FlexAlign.Center) .alignItems(HorizontalAlign.Center) } .height('100%') Text('') .onClick(() => { if (this.visible == Visibility.Visible) { this.visible = Visibility.None } else { this.visible = Visibility.Visible } }) .width('100%') .height('100%') .backgroundColor(0x000000) .visibility(this.visible) Column() { Image($r('app.media.icon')) .width(300) .height(300) .draggable(false) .visibility(this.visible) } } } }Index.etsimport {ImageGesture} from './ImageGesture' @Entry @Component struct Index { build() { Column(){ ImageGesture() } .height('100%') } }手指缩放参考一下链接:https://gitee.com/harmonyos-cases/cases/blob/master/CommonAppDevelopment/feature/imageviewer/README.md
示例参考如下:
ImageGesture.ets
Index.ets
手指缩放参考一下链接:https://gitee.com/harmonyos-cases/cases/blob/master/CommonAppDevelopment/feature/imageviewer/README.md