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加载图片任务管理和缓存管理解析

相关推荐
阿钱真强道7 小时前
19 小凌派 rk2206 鸿蒙 LiteOS-M 任务详解
华为·鸿蒙·任务·liteos·详解·rk2206·小凌派
阿钱真强道7 小时前
18 小凌派 rk2206 鸿蒙 liteos 如何通过修改配置文件,编译不通的案例
华为·鸿蒙·编译·案例·liteos·rk2206
UnicornDev7 小时前
【Flutter x HarmonyOS 6】魔方计时APP——记录页面的UI设计
flutter·ui·华为·harmonyos·鸿蒙
空中海18 小时前
03 ArkUI 组件、状态与多端适配
鸿蒙
●VON1 天前
纯ArkUI实现7层拟物3D环形进度图:零依赖的视觉革命
服务器·3d·app·鸿蒙·von
aqi001 天前
一文速览 HarmonyOS 6.0.1 引入的十个新特性
android·华为·harmonyos·鸿蒙·harmony
三声三视1 天前
鸿蒙 ArkTS 国际化实战全攻略:多语言切换、格式本地化与 RTL 布局一步到位
华为·harmonyos·鸿蒙
空中海1 天前
04 Stage 模型、系统能力与数据架构
架构·鸿蒙
●VON1 天前
鸿蒙Widget开发实战:3张卡片实现桌面-App全链路同步
华为·app·harmonyos·鸿蒙·von
key_3_feng1 天前
Pura X Max 鸿蒙深度优化方案
华为·鸿蒙