HarmonyOS 鸿蒙Next codelabs中ImageEdit范例程序测试的一点心得
HarmonyOS 鸿蒙Next codelabs中ImageEdit范例程序测试的一点心得
1、ArkTS组件设置事件回调函数时(例如:Slider的onchange),正常都是用箭头函数,但如果自定义函数名作为参数,编译也是没问题的,但程序运行时组件的属性变量在函数内部无法访问(undefined), 成为容易踩进去的一个坑,早期API似乎是可以的,因为codelabs程序曾经就是这么写的。
2、Slider的SliderChangeMode的Click事件似乎也同时触发End事件,如果同时想处理滑动与点击这两个事件,可能造成事件处理两次。建议End只针对于拖动滑块结束事件,应该更符合逻辑。
3、由Pixelmap生成的Image组件刷新也是个问题,看着ImageEdit例子程序的一些写法:
刷新组件(旧版API有作用?新版API这几句没用了)
flushPixelMap() {
const temp = this.pixelMap;
this.pixelMap = undefined;
this.pixelMap = temp;
}
在build()中生成Image组件:
if (this.isPixelMapChange) {
Image(this.pixelMap)
.objectFit(ImageFit.None)
}
else {
Image(this.pixelMap)
.objectFit(ImageFit.None)
}
感觉也是怪怪的。
在HarmonyOS鸿蒙Next codelabs的ImageEdit范例程序测试中,我注意到其通过动态设置样式(如clip-path、transform等)实现了对图片的裁剪、旋转、缩放和镜像操作。这些操作充分利用了鸿蒙的分布式架构和丰富的UI组件库,使得跨设备交互和UI设计更加灵活。同时,Image组件支持多种图片格式和加载方式,包括本地资源、网络资源等,为开发者提供了极大的便利。
如果问题依旧没法解决请加我微信,我的微信是itying888。