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

相关推荐
ChinaDragonDreamer9 天前
HarmonyOS:知识点总结(一)
harmonyos·鸿蒙
加农炮手Jinx10 天前
Flutter for OpenHarmony 实战:JWT — 构建安全的无状态认证中心
网络·flutter·华为·harmonyos·鸿蒙
雷帝木木10 天前
Flutter for OpenHarmony:Flutter 三方库 money2 — 坚不可摧的鸿蒙金融核心组件
网络·flutter·http·华为·金融·harmonyos·鸿蒙
特立独行的猫a10 天前
uniapp-x的HarmonyOS鸿蒙应用开发:tabbar底部导航栏的实现
华为·uni-app·harmonyos·鸿蒙·uniapp-x
●VON10 天前
HarmonyOS应用开发实战(基础篇)Day10 -《鸿蒙网络请求实战》
网络·学习·华为·harmonyos·鸿蒙·von
●VON11 天前
HarmonyOS应用开发实战(基础篇)Day08-《构建布局详解上》
华为·harmonyos·鸿蒙·von
加农炮手Jinx13 天前
Flutter for OpenHarmony 实战:疯狂头像 App(三)— 复合动画与交互反馈 — 让 UI 跃动起来
flutter·ui·交互·harmonyos·鸿蒙
_waylau14 天前
鸿蒙架构师修炼之道-架构师设计思维特点
华为·架构·架构师·harmonyos·鸿蒙·鸿蒙系统
Betelgeuse7614 天前
【Flutter For OpenHarmony】 项目结项复盘
华为·交互·开源软件·鸿蒙
ITUnicorn15 天前
【HarmonyOS 6】进度组件实战:打造精美的数据可视化
华为·harmonyos·arkts·鸿蒙·harmonyos6