鸿蒙5.0开发进阶:UI框架-ArkTS组件(List)

打印 上一主题 下一主题

主题 1630|帖子 1630|积分 4890

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
往期鸿蒙全套实战文章必看:(文中附带全栈鸿蒙学习资料)



  • 鸿蒙开发核心知识点,看这篇文章就够了

  • 最新版!鸿蒙HarmonyOS Next应用开发实战学习路线

  • 鸿蒙HarmonyOS NEXT开发技能最全学习路线指南

  • 鸿蒙应用开发实战项目,看这一篇文章就够了(部分项目附源码)
<hr> List

列表包罗一系列雷同宽度的列表项。适合连续、多行呈现同类数据,例如图片和文本。
   阐明
  
      
  • 该组件从API Version 7开始支持。后续版本如有新增内容,则采取上角标单独标志该内容的起始版本。
      
  • 该组件内容区小于一屏时,默认没有回弹结果。必要回弹结果,可以通过edgeEffect属性的options参数进行设置。
      
  • List组件通用属性clip的默认值为true。
      
  • 要使List处于可编辑模式需共同onItemDelete事件和ListItem的editable属性,即可编辑模式实现删除列表项功能,需满足以下条件(该功能从API9开始废弃):
         
    • editMode属性设置为true。
         
    • 绑定onItemDelete事件,且事件回调返回true。
         
    • ListItem的editable属性设置为true。
         
      
  • 实现ListItem拖拽,需满足以下条件:
         
    • editMode属性设置为true(从API9开始无需设置editMode属性)。
         
    • 绑定onDragStart事件,且事件回调中返回浮动UI布局。
         

  子组件

仅支持ListItem、ListItemGroup子组件,支持渲染控制范例(if/else、ForEach、LazyForEach和Repeat)。
   阐明
  List的子组件的索引值盘算规则:
  按子组件的序次依次递增。
  if/else语句中,只有条件成立的分支内的子组件会参与索引值盘算,条件不成立的分支内子组件不盘算索引值。
  ForEach/LazyForEach/Repeat语句中,会盘算展开全部子节点索引值。
  if/else、ForEach、LazyForEach和Repeat发生变革以后,会更新子节点索引值。
  ListItemGroup作为一个团体盘算一个索引值,ListItemGroup内部的ListItem不盘算索引值。
  List子组件visibility属性设置为Hidden或None依然会盘算索引值。
  List子组件的visibility属性设置为None时不表现,但该子组件上下的space还访问效。
  接口

List(value?:{space?: number | string, initialIndex?: number, scroller?: Scroller})
卡片能力: 从API version 9开始,该接口支持在ArkTS卡片中使用。
元服务API: 从API version 11开始,该接口支持在元服务中使用。
系统能力: SystemCapability.ArkUI.ArkUI.Full
参数:
    参数名   范例   必填   阐明         space   number | string   否    子组件主轴方向的隔断。
默认值:0
参数范例为number时单元为vp
阐明:
设置为负数或者大于便是List内容区长度时,按默认值表现。
space参数值小于List分割线宽度时,子组件主轴方向的隔断取分割线宽度。
        initialIndex   number   否    设置当前List初次加载时表现地区起始位置的item索引值。
默认值:0
阐明:
设置为负数或超过了当前List末了一个item的索引值时视为无效取值,无效取值按默认值表现。
        scroller   Scroller   否    可滚动组件的控制器。用于与可滚动组件进行绑定。
阐明:
不允许和其他滚动类组件绑定同一个滚动控制对象。
    属性

除支持通用属性和滚动组件通用属性外,还支持以下属性:
listDirection

listDirection(value: Axis)
设置List组件分列方向。
卡片能力: 从API version 9开始,该接口支持在ArkTS卡片中使用。
元服务API: 从API version 11开始,该接口支持在元服务中使用。
系统能力: SystemCapability.ArkUI.ArkUI.Full
参数:
    参数名   范例   必填   阐明         value   Axis   是    组件的分列方向。
默认值:Axis.Vertical
    divider

divider(value: {strokeWidth: Length; color?: ResourceColor; startMargin?: Length; endMargin?: Length;} | null,)
设置ListItem分割线样式,默认无分割线。
endMargin + startMargin 超过列宽度后startMargin和endMargin会置0。
strokeWidth, startMargin和endMargin不支持设置百分比。
List的分割线画在主轴方向两个子组件之间,第一个子组件上方和末了一个子组件下方不会绘制分割线。
多列模式下,ListItem与ListItem之间的分割线起始边距从每一列的交叉轴方向起始边开始盘算,其他情况从List交叉轴方向起始边开始盘算。
ListItem设置多态样式时,被按压的子组件上下的分割线不绘制。
卡片能力: 从API version 9开始,该接口支持在ArkTS卡片中使用。
元服务API: 从API version 11开始,该接口支持在元服务中使用。
系统能力: SystemCapability.ArkUI.ArkUI.Full
参数:
    参数名   范例   必填   阐明         value    {     
strokeWidth: Length,
color?:ResourceColor,
startMargin?: Length,
endMargin?:
  
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

涛声依旧在

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表