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

鸿蒙开发List长按Item拖拽切换效果

鸿蒙开发List长按Item拖拽切换效果

android就很常见长按item拖来拖去切换,鸿蒙中也可以做,就是麻烦一点。

一、效果图:

在这里插入图片描述
这个看视频更直观点:

鸿蒙开发教程实战案例源码分享-List长按Item拖拽切换效果

二、思路:

自定义CardSortListItem组件,还有Image的gesture方法

三、关键代码:
@Entry
@ComponentV2
struct Index {@Local currentCardSort: Array<number> = []aboutToAppear(): void {this.currentCardSort = Constants.DEFAULT_CARD_SORT}build() {Column() {Text("长按item拖拽切换不同位置item").fontSize(24).fontWeight(FontWeight.Bold).margin({top:100})Stack() {this.cardSortList()}.width('100%').layoutWeight(1).margin({top:16})}.height('100%').width('100%')}@BuildercardSortList() {List() {ForEach(this.currentCardSort, (item: number) => {CardSortListItem({weatherCardItemType: item,index: this.currentCardSort.findIndex(it => it == item),length: this.currentCardSort.length,onReorderStart: () => {return true},onChangeItem: (from, to) => {if (ArrayUtil.isNotEmpty(this.currentCardSort)) {const tmp = this.currentCardSort.splice(from, 1)this.currentCardSort.splice(to, 0, tmp[0])}},onReorderDone: () => {},onWeatherObserveSortTap: () => {}})}, (item: number) => item.toString())}.width('100%').height('100%').divider({ strokeWidth: 12, color: $r('app.color.transparent') })}
}
四、项目demo源码结构图:

在这里插入图片描述

有需要完整demo源码的私信我,我每天都看私信的

http://www.dtcms.com/a/266693.html

相关文章:

  • 基于区块链的物联网(IoT)安全通信与数据共享的典型实例
  • JSONLines和JSON数据格式使用教程
  • AI大模型:(二)1.5 Stable Diffusion中文文生图模型部署
  • 30 秒锁定黑客攻击:SLS SQL 如何从海量乱序日志中“揪”出攻击源
  • 【C语言刷题】第十天:加量加餐继续,代码题训练,融会贯通IO模式
  • 短篇小说7.4
  • BM4 合并两个排序的链表
  • QT6 源(152)模型视图架构里的表格窗体视图 QTableWidget 篇二:学习本类的 protected 权限的成员函数,以及信号与槽函数
  • c语言中的函数IV
  • MCMC:高维概率采样的“随机游走”艺术
  • pybind11 导出 C++ map 在 Python 层 get 访问慢的优化方案
  • 区块链技术核心组件及应用架构的全面解析
  • python打卡day59@浙大疏锦行
  • 车载电子电气架构 --- OEM走向开放协同与敏捷迭代
  • 数据结构:队列的顺序存储实现
  • 【Linux 系统】基础IO——Linux中对文件的理解
  • 【深度学习新浪潮】如何使用大模型等技术基于序列预测蛋白质的结构,功能和靶点?
  • 【学习笔记】Lean4基础 ing
  • 邮科千兆8光8电工业级交换机互联网的脉搏
  • 洛谷刷题8
  • 云原生Kubernetes系列 | Ingress和Egress网络策略NetworkPolicy结合案例使用详解
  • 5060Ti安装黑屏问题一解
  • 【WIP】【VLAVLM——InternVL系列】
  • Maven编译和打包插件
  • cd-agent更换cd模型(自用)
  • i18next + 原生JS 双引擎:打造前端多语言系统最佳实践
  • Android 网络请求优化全面指南
  • 韩国小说《素食者》读后感
  • C++--多态
  • 全网唯一/Qt结合ffmpeg实现手机端采集摄像头推流到rtsp或rtmp/可切换前置后置摄像头/指定分辨率帧率