有一个List,ListItem里面显示一张图片和文本,点击按钮的时候把数据全部更新,每次应用被杀,点击更新的时候会闪一下。如果图片不是本地图片,是网络上随机变化的图片,每次更新显示网络图片几乎每次都会闪
有一个List,ListItem里面显示一张图片和文本,点击按钮的时候把数据全部更新,每次应用被杀,点击更新的时候会闪一下。如果图片不是本地图片,是网络上随机变化的图片,每次更新显示网络图片几乎每次都会闪
1 回答1.1k 阅读✓ 已解决
1 回答1.4k 阅读
1 回答1.2k 阅读
1 回答1.1k 阅读
1 回答1.1k 阅读
1 回答988 阅读
1 回答962 阅读
推荐使用lazyforeach,若仅靠LazyForEach的刷新机制,当item变化时若想更新子组件,需要将原来的子组件全部销毁再重新构建,在子组件结构较为复杂的情况下,靠改变键值去刷新渲染性能较低。因此框架提供了@Observed与@ObjectLink机制进行深度观测,可以做到仅刷新使用了该属性的组件,提高渲染性能,避免更新listitem时图片闪烁问题
详细请参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-rendering-control-lazyforeach-V5
改变数据子属性
@Observed与@ObjectLink的使用详细参考:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-observed-and-objectlink-V5\#在子组件中给objectlink装饰的变量赋值
可参考如下demo: