当前位置: 首页 > news >正文

鸿蒙开发刷新单个item会闪一下处理

鸿蒙开发刷新单个item会闪一下

首先我用的是懒加载方式,改变某位数据后我调listener.onDataChange(index),发现item的改动是变了,但是item也闪了一下。

先分析为什么item会闪一下

其他是因为item上有图片,加载的网络图。你onDataChange(index)时,它会重新加载这一item,自然图片也重新加载,因为是网络图,加载需要时间,所以就闪了一下

解决方案1:用@ObjectLink和@Observed配合使用

**好处:**用了它,你不用调onDataChange(index),它也会改动成功,并且不闪
**不好:**它只支持类,并且每个对象都得new 进去
关键代码示例如下:
1、bean类必须加@Observed

@Observed
export class HomeBaseListBean{authMsg?:stringjobAuthStatus?:booleanvideoAuthStatus?:booleanvipStatus?:booleancheckIsLove?:booleanconstructor(authMsg?:string,jobAuthStatus?:boolean,videoAuthStatus?:boolean,vipStatus?:boolean,checkIsLove?:boolean,

2、必须是在@Component组件里面用

@Component
export struct HomeWaterFallItemComponent {// 继续用ObjectLink这样不用刷新整个item,避免闪烁@ObjectLink userBean:HomeBaseListBean

假设里面组件触发改变

Image(this.userBean.checkIsLove?$r('app.media.ic_heart_on_formal_three'):$r('app.media.ic_heart_off_formal_three')).width(24).height(24
http://www.lryc.cn/news/413181.html

相关文章:

  • 您需要了解的有关 5G 的一切。
  • 【redis】初识redis入门,基础部署以及介绍
  • 数据库基础 -- 数据库约束
  • U盘文件或目录损坏无法读取?专业恢复策略全解析
  • dpdk实现udp协议栈
  • Shell编程——基础语法(2)和 Shell流程控制
  • Python基础教程(二)字符串和函数
  • 智算新风向丨趋动科技获中国信通院泰尔实验室首张智算资源池化能力泰尔测评证书
  • 计算机基础(Windows 10+Office 2016)教程 —— 第4章 计算机网络与Internet(上)
  • MES系统在数字化转型中的核心作用与影响
  • 装修施工注意事项
  • 【Docker学习记录】
  • 互联网政务应用安全管理规定
  • HarmonyOS开发商城首页实现
  • QtQuick Text-文本样式
  • 人工智能未来展望
  • Pymol开源版安装 新版 3.0 / 3.1 Windows安装Pymol开源版
  • 记录一次环境的安装
  • 浏览器用户文件夹详解 - WebData(八)
  • ijkplayer 自定义协议播放加密内容 Android
  • 【kill】Centos/Linux 如何杀死那该死的进程?
  • Cadence23学习笔记(十七)
  • WinFrom调用webapi接口方法及其应用实例
  • 智能巡检企业级域名 SSL 证书
  • 海思35XX系列(三)sensor(传感器)
  • dfs(续做)
  • OpenStack;异构算力网络架构;算力服务与交易技术;服务编排与调度技术
  • PLC-Recorder对于数据采集时间戳偏差的修正功能
  • 自定义监控
  • 关于使用php的mpdf插件遇到的一些问题