HarmonyOS基本工具封装——BaseImage解决鸿蒙加载图片过大时闪退问题

前言

简介

鸿蒙基本库封装,提升鸿蒙开发效率

安装

ohpm install @peakmain/library

介绍

  • 解决华为图片过大闪退问题
  • 用于显示图片或占位图的基础组件,支持图片加载、尺寸控制、圆角处理等功能。

导入依赖

javascript 复制代码
import { BaseImage} from '@peakmain/library'

组件属性

属性名 类型 默认值 说明
url ResourceStr "" 图片资源路径(必填)
imageSize `SizeOptions null` null
fillColor `ResourceColor ResourceStr` undefined
imageFit `ImageFit null` null
imageRadius `Length BorderRadiuses LocalizedBorderRadiuses
placeBackgroundColor ResourceColor ColorMetrics.numeric(0xFFE9E9E9).color 占位图背景颜色(当 url 为空时显示)

组件方法

方法名 参数 返回值 说明
build void 组件构建方法: - 若 url 为空,显示带占位背景和圆角的 Stack - 若 url 有效,显示图片并应用配置

解决原理

  • 核心代码:autoResize
  • 官方文档地址:developer.huawei.com/consumer/cn...
  • 设置图片解码过程中是否对图源自动缩放。降采样解码时图片的部分信息丢失,因此可能会导致图片质量的下降(如:出现锯齿),这时可以选择把autoResize设为false,按原图尺寸解码,提升显示效果,但会增加内存占用。
  • 虽官方说图片部分信息丢失,但我们这边测下,基本没啥区别(肉眼上)
相关推荐
lbb 小魔仙9 小时前
【HarmonyOS实战】React Native 表单实战:在 OpenHarmony 上构建高性能表单
react native·华为·harmonyos
一只大侠的侠11 小时前
React Native开源鸿蒙跨平台训练营 Day16自定义 useForm 高性能验证
flutter·开源·harmonyos
早點睡39012 小时前
高级进阶 React Native 鸿蒙跨平台开发:@react-native-community-slider 滑块组件
react native·react.js·harmonyos
一只大侠的侠13 小时前
Flutter开源鸿蒙跨平台训练营 Day11从零开发商品详情页面
flutter·开源·harmonyos
一只大侠的侠13 小时前
React Native开源鸿蒙跨平台训练营 Day18自定义useForm表单管理实战实现
flutter·开源·harmonyos
一只大侠的侠13 小时前
React Native开源鸿蒙跨平台训练营 Day20自定义 useValidator 实现高性能表单验证
flutter·开源·harmonyos
听麟14 小时前
HarmonyOS 6.0+ 跨端智慧政务服务平台开发实战:多端协同办理与电子证照管理落地
笔记·华为·wpf·音视频·harmonyos·政务
前端世界14 小时前
从单设备到多设备协同:鸿蒙分布式计算框架原理与实战解析
华为·harmonyos
一只大侠的侠15 小时前
Flutter开源鸿蒙跨平台训练营 Day12从零开发通用型登录页面
flutter·开源·harmonyos
前端不太难16 小时前
HarmonyOS App 工程深水区:从能跑到可控
华为·状态模式·harmonyos