往期推文全新看点(文中附带全新鸿蒙5.0全栈学习笔录)

✏️ 鸿蒙应用开发与鸿蒙系统开发哪个更有前景?

✏️ 嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~

✏️ 对于大前端开发来说,转鸿蒙开发究竟是福还是祸?

✏️ 鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?

✏️ 市场巨变,移动开发行业即将迎来“第二春”?

✏️ 记录一场鸿蒙开发岗位面试经历~

✏️ 持续更新中……


介绍

该场景多用于待办事项管理、文件管理、备忘录的记录管理等。

效果图预览

使用说明

  • 点击添加按钮,选择需要添加的待办事项。
  • 点击左侧checkbox按钮,待办事项状态变更为已完成。
  • 左滑单个待办事项,点击删除按钮后,当前待办事项被删除。

实现思路

  1. List组件绑定@State修饰的数组变量toDoData。
@State toDoData: ToDo[] = []; // 待办事项

List({ initialIndex: 0, space: STYLE_CONFIG.LIST_ITEM_GUTTER }) {
   ForEach(this.toDoData, (toDoItem: ToDo, index: number) => {
      ...
   })
}
  1. ListItem组件设置左滑动效 swipeAction属性,使得单个ListItem可以进行左右滑动,并显示自定义的UIBuilder。
@Builder
itemEnd(item: ToDo) {
   ...
}

ListItem(){
    ...
}
.swipeAction({ end: this.itemEnd(toDoItem), edgeEffect: SwipeEdgeEffect.Spring }) // 设置item左滑显示视图属性。
  1. 新增/删除列表项,更新数组变量toDoData,并同时更新List组件UI(MVVM)。

高性能知识点

不涉及

工程结构&模块类型

pendingitems                                    // har
|---model
|   |---ToDo.ets                                // TODO类定义
|   |---ConstData.ets                           // 常量数据
|---pages
|   |---ToDoList.ets                            // 列表项功能增删实现页面
|   |---ToDoListItem.ets                        // 列表项页面

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐