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

【Harmony OS 4.0】向上滑动加载案例

在这里插入图片描述

// 自定义class类对象类型
class Article {public id: numberpublic title: stringpublic content: stringconstructor(id: number, title: string, content: string) {this.id = idthis.title = titlethis.content = content}
}// 子组件
@Component
struct ArticleComponent {@Prop article: Articlebuild() {Row() {Column() {Image($r('app.media.startIcon')).width(80).height(80).margin({ right: 15 }) // 取项目resources图标}Column() {Text(this.article.title).fontSize(20).margin({ bottom: 5 })Text(this.article.content).fontSize(16).fontColor('#666666')}.alignItems(HorizontalAlign.Start) // Column容器组件的属性alignItems,alignItems(HorizontalAlign.Start)设置子元素水平方向距左对齐方式.width('100%').height('100%')}.padding(18).borderRadius(16).backgroundColor('#EEEEEE').width('100%').height(120).justifyContent(FlexAlign.SpaceBetween)}
}// 父组件
@Entry
@Component
struct UITest10 {@State isListReachEnd: boolean = false // 是否到达列表底部@State article_array: Array<Article> = [new Article(1, '第1篇文章', '文章的内容和介绍'),new Article(2, '第2篇文章', '文章的内容和介绍'),new Article(3, '第3篇文章', '文章的内容和介绍'),new Article(4, '第4篇文章', '文章的内容和介绍'),new Article(5, '第5篇文章', '文章的内容和介绍'),new Article(6, '第6篇文章', '文章的内容和介绍')]build() {Column() {List() {ForEach(this.article_array, (item: Article) => {ArticleComponent({ article: item }).margin({ top: 15 })})}// 列表到底末尾位置时触发。List边缘效果为弹簧效果时,划动经过末尾位置时触发一次,回弹回末尾位置时再触发一次。.onReachEnd(() => {this.isListReachEnd = true})// 给列表绑定并行手势方法,手势方法用的是拖动手势,向上拖动,80.parallelGesture(PanGesture({ direction: PanDirection.Up, distance: 80 })// 拖动手势的事件 - 手势识别成功回调.onActionStart(() => {if (this.isListReachEnd) { // 监测到向上滑动80的手势// 进行加载let count = this.article_array.lengthlet new_id = count += 1this.article_array.push(new Article(new_id, `${new_id}篇文章`, '文章的内容和介绍'))this.isListReachEnd = false}})).padding(10).scrollBar(BarState.Off) // 页面滚动条不显示}.width('100%').height('100%')}
}
http://www.lryc.cn/news/426237.html

相关文章:

  • SQL基础教程(八)SQL高级处理
  • [论文笔记] Data-Juicer: A One-Stop Data Processing System for Large Language Models
  • 期末速成复习资料——操作系统
  • Android之Service与IntentService区别
  • 【MySQL】表的设计
  • NC 用两个栈实现队列
  • 用后端实现一个简单的登录模块2 前端页面
  • MySQL慢查询的查找语法
  • SQL中的聚合方法与Pandas的对应关系
  • 计算机毕业设计选题推荐-计算中心高性能集群共享平台-Java/Python项目实战
  • 仿RabbitMq实现简易消息队列基础篇(future操作实现异步线程池)
  • 经典算法题总结:数组常用技巧(双指针,二分查找和位运算)篇
  • 版本控制基础理论
  • 微分方程(Blanchard Differential Equations 4th)中文版Section1.4
  • 求职Leetcode算法题(7)
  • ActiveMQ、RabbitMQ、Kafka、RocketMQ在事务性消息、性能、高可用和容错、定时消息、负载均衡、刷盘策略的区别
  • HanLP分词的使用与注意事项
  • Python 的进程、线程、协程的区别和联系是什么?
  • 实时数据推送:Spring Boot 中两种 SSE 实战方案
  • 数据守护者:SQL一致性检查的艺术与实践
  • jenkins配置+vue打包多环境切换
  • idea和jdk的安装教程
  • HTML静态网页成品作业(HTML+CSS)——电影网首页网页设计制作(1个页面)
  • 大数据系列之:Flink Doris Connector,实时同步数据到Doris数据库
  • LabVIEW VI 多语言动态加载与运行的实现
  • Unity引擎基础知识
  • 练习题- 探索正则表达式对象和对象匹配
  • Java集合提升
  • uniapp 微信小程序生成水印图片
  • ElasticSearch相关知识点