HarmonyOS预加载Image组件的图片

某些模式下无法使用ImageKnife,如Web同层渲染,ImageKnife组件是无法显示的,所以必须使用Image组件,而为了快速打开Image图片,需要提前下载图片资源,在使用Image组件时,如果下载完了就是用缓存数据,期望:

1.Image组件提供预下载图片能力。

2.ImageKnife修复在同层渲染下的无法展示bug。

HarmonyOS
2024-09-12 11:52:01
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
Heiang

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-system-app-V5#setimagerawdatacachesize7可参考以下demo:

import app, { AppResponse } from '@system.app' 
@Entry 
@Component 
struct Page3 { 
  //app.setImageRawDataCacheSize方法需要在由@Entry标记的页面,onPageShow或aboutToAppear里面设置才生效 
  onPageShow() { 
    // 设置解码前图片数据内存缓存上限为100MB (100MB=100*1024*1024B=104857600B) 
    app.setImageRawDataCacheSize(104857600) 
    console.info('Application onPageShow') 
  } 
  onDestroy() { 
    console.info('Application onDestroy') 
  } 
  @State alt:Resource =$r('app.media.foreground') 
  build() { 
    Row() { 
      Column() { 
        Image($r('')) 
          .onError(()=>{ 
            console.log('demoTest') 
            this.alt = $r('app.media.icon') 
          }) 
          .alt(this.alt) 
          .width(100) 
          .height(100) 
      } 
    } 
  } 
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.

imageknife链接:https://gitee.com/openharmony-tpc/ImageKnife/tree/3.x/,使用3.x的imageknife。

分享
微博
QQ
微信
回复
2024-09-12 17:21:03


相关问题
HarmonyOS Image组件加载图片报错
546浏览 • 1回复 待解决
HarmonyOS image组件图片加载性能数据
958浏览 • 1回复 待解决
Image组件如何加载沙盒内图片
3034浏览 • 1回复 待解决
HarmonyOS Image组件加载在线图片报错
855浏览 • 1回复 待解决
HarmonyOS Image加载图片
356浏览 • 1回复 待解决
Image组件如何加载网络图片
3214浏览 • 1回复 待解决
关于Image组件加载网络图片问题
1332浏览 • 1回复 待解决
TabContent组件是否支持加载
2365浏览 • 1回复 待解决
HarmonyOS Image图片无法加载
577浏览 • 1回复 待解决
Web组件加载,如何实现?
2040浏览 • 1回复 待解决
png图片使用Image组件加载出现锯齿
2186浏览 • 1回复 待解决
HarmonyOS Image加载网络图片
396浏览 • 1回复 待解决
HarmonyOS Image加载图片不出现
586浏览 • 1回复 待解决