HarmonyOS LazyForEach中listItem添加动画效果

在List 中,LazyForEach 里面的ListItem 在刷新的时候无法做动画嘛?

同样一个动画,单独写就没有问题,但是放到List ->LazyForEach->ListItem 中没有任何动画效果,直接从0到1了

HarmonyOS
2024-12-25 08:20:50
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Excelsior_abit

可以参考自定义动画属性

参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-custom-attribute-animation-V5

参考demo:

@Entry
@Component
struct MyComponent {
  @State private materialsDataSource: FilterItemDataSource = new FilterItemDataSource()
  private dataOrign: MaterialWrap[] = []
  @State widths:number = 10
  aboutToAppear() {
    for (let i = 0; i <= 2; i++) {
      this.dataOrign.push(new MaterialWrap(10))
    }
    this.materialsDataSource.filterDataItems = this.dataOrign
    this.materialsDataSource.notifyDataReload()
  }
  build() {
    Column() {
      List({ space: 3 }) {
        LazyForEach(this.materialsDataSource, (item: MaterialWrap) => {
          ListItem() {
            Button("button").animatableFontSize(item.size)
              .animation({ duration: 1000, curve: Curve.Linear })
          }
          .onClick(() => {
            item.size = item.size == 10 ? 20 : 10;
          })
        }, (item: MaterialWrap) => item.size.toString())
      }.cachedCount(5)
    }
  }
}
@AnimatableExtend(Button)
function animatableFontSize(size: number) {
  .fontSize(size)
}
分享
微博
QQ
微信
回复
2024-12-25 10:02:17
相关问题
HarmonyOS Text添加动画效果与预期不符
1100浏览 • 1回复 待解决
HarmonyOS grid拖拽效果如何添加动画
1270浏览 • 1回复 待解决
HarmonyOS ListListItem插入怎么加入动画
1338浏览 • 1回复 待解决
LazyForEach如何添加数据?
2907浏览 • 1回复 待解决
鸿蒙怎么实现动画翻转效果
11923浏览 • 2回复 待解决
在 ArkUl如何实现动画效果?
931浏览 • 0回复 待解决
HarmonyOS 动画效果+手势
1023浏览 • 1回复 待解决
HarmonyOS List动画效果
1066浏览 • 1回复 待解决
HarmonyOS 列表动画效果
1287浏览 • 1回复 待解决
HarmonyOS 动画效果实现
1626浏览 • 1回复 待解决
HarmonyOS 旋转动画效果
1176浏览 • 1回复 待解决
HarmonyOS .scale没有动画效果
901浏览 • 1回复 待解决
HarmonyOS clipShape 动画效果实现
1429浏览 • 0回复 待解决
属性动画如何实现宽高动画效果
3382浏览 • 1回复 待解决
HarmonyOS 拍摄录制的动画效果
700浏览 • 1回复 待解决