HarmonyOS 鸿蒙Next 使用Image组件展示webp图片播放完成回调方法
HarmonyOS 鸿蒙Next 使用Image组件展示webp图片播放完成回调方法
您好,请问运行,我在使用Image组件展示webp图片时,我需要知道webp图片播放完成的回调,有什么方法吗?
2 回复
Image组件展示webp 暂不支持播放结束回调api
您可以使用ImageKnife来实现gif/webp动图播放与控制(ImageAnimator实现)
ImageKnifeAnimatorComponent动图控制组件
链接:https://gitee.com/openharmony-tpc/ImageKnife/tree/master
您可以把webp文件放到文件夹中,然后压缩文件夹,将压缩后的文件夹上传
可以参考以下demo:
import { ImageKnifeOption,AnimatorOption,ImageKnifeAnimatorComponent } from '[@ohos](/user/ohos)/imageknife'
[@Entry](/user/Entry)
[@ComponentV2](/user/ComponentV2)
struct Page241011182340128 {
[@Local](/user/Local) animatorOption: AnimatorOption = new AnimatorOption({
state: AnimationStatus.Running,
iterations: 1,
onFinish:()=>{
this.animatorOption.state = AnimationStatus.Stopped
console.log(""ImageKnifeAnimatorComponent animatorOption onFinish"")
},
onStart:()=>{
console.log(""ImageKnifeAnimatorComponent animatorOption onStart"")
},
onPause:()=>{
console.log(""ImageKnifeAnimatorComponent animatorOption onPause"")
},
onCancel:()=>{
console.log(""ImageKnifeAnimatorComponent animatorOption onCancel"")
},
onRepeat:()=>{
console.log(""ImageKnifeAnimatorComponent animatorOption onRepeat"")
}
})
build() {
Column(){
ImageKnifeAnimatorComponent({
imageKnifeOption:new ImageKnifeOption({
loadSrc:$r('app.media.game_prop_webp'),
placeholderSrc:$r('app.media.game_prop_webp'),
}),animatorOption:this.animatorOption
}).width(200).height(200).backgroundColor(Color.Orange).margin({top:30})
}.width(""100%"").height(""100%"")
}
}