OpenHarmony基础组件—图片加载ImageKnife

1、参考资源

1、资源相关地址:

ImageKnife: 专门为OpenHarmony打造的一款图像加载缓存库,致力于更高效、更轻便、更简单 (gitee.com)

OpenHarmony图形基础组件---ImageKnife_imageknife progresslistener-CSDN博客

OpenHarmony ArkUI框架开发-ImageKnife渲染层重构_imageknifecomponent 圆角-CSDN博客

鸿蒙版本:Api12

2、功能源码解析

1、ImageAnimator动画加载和控制;

组件:ImageKnifeAnimatorComponent;

主要设置:

1、ImageKnifeOption; 1、图片加载相关设置:图片地址、占位图、失败图;2、缓存相关设置:缓存策略,加载策略;3、加载任务优先级设置、加载状态回调;上下文;图片转化设置;

2、AnimatorOption;主要动画控制回调方法;state;iterations;reverseonStart;onFinish;onPause;onCancel;onRepeat;

3、Component组件相关设置;width、height、backgroundColor、margin;

加载流程

1、ImageKnifeAnimatorComponent中通过组件的生命周期处理图片加载;状态设置等;

2、使用@Monitor监听外部参数设置改变;

3、使用系统控件ImageAnimator显示加载的图片和设置图片相关属性和状态回调;

4、使用ImageKnife管理图片加载任务和图片缓存;

2、Hsp预加载图片

复制代码
ImageKnife.getInstance()
  .preLoadCache('https://img.xxx')
  .then((data) => {
    console.log("preLoadImage_FileCache:" + data)
    this.imageKnifeOption.loadSrc = data
  })

由于ImageKnife是框架图片加载任务和缓存的管理类;预加载可以使用该工具中提供的加载方法实现;

3、ImageKnife加载图片任务管理和缓存管理解析

相关推荐
仓颉编程语言4 小时前
鸿蒙仓颉编程语言挑战赛二等奖作品:TaskGenie 打造基于仓颉语言的智能办公“任务中枢”
华为·鸿蒙·仓颉编程语言
_waylau8 小时前
鸿蒙架构师修炼之道-架构师的职责是什么?
开发语言·华为·harmonyos·鸿蒙
坚果派·白晓明12 小时前
在鸿蒙设备上快速验证由lycium工具快速交叉编译的C/C++三方库
c语言·c++·harmonyos·鸿蒙·编程语言·openharmony·三方库
熊猫钓鱼>_>14 小时前
移动端开发技术选型报告:三足鼎立时代的开发者指南(2026年2月)
android·人工智能·ios·app·鸿蒙·cpu·移动端
ITUnicorn14 小时前
【HarmonyOS6】ArkTS 自定义组件封装实战:动画水杯组件
华为·harmonyos·arkts·鸿蒙·harmonyos6
晚霞的不甘14 小时前
Flutter for OpenHarmony 构建简洁高效的待办事项应用 实战解析
flutter·ui·前端框架·交互·鸿蒙
廖松洋(Alina)15 小时前
【收尾以及复盘】flutter开发鸿蒙APP之成就徽章页面
flutter·华为·开源·harmonyos·鸿蒙
廖松洋(Alina)16 小时前
【收尾以及复盘】flutter开发鸿蒙APP之打卡日历页面
flutter·华为·开源·harmonyos·鸿蒙
廖松洋(Alina)16 小时前
【收尾以及复盘】flutter开发鸿蒙APP之本月数据统计页面
flutter·华为·开源·harmonyos·鸿蒙
我讲个笑话你可别哭啊1 天前
鸿蒙ArkTS快速入门
前端·ts·arkts·鸿蒙·方舟开发框架