UI-无限循环列表

无限循环列表

创建

在任意节点上,添加Scroller,ScrollView组件,和RectMask2D组件:
在这里插入图片描述
其中列表的大小,依赖Rect的大小。

界面参数介绍

在这里插入图片描述
ViewPort:视口大小
SrollDirction:滚动方向
MovementType:移动类型(滚动的速度曲线)
Elasticity:弹性系数
SrollSensitivity:滚动系数,越大移动的越多。为1时表示等比移动。
Interia:是否开启惯性
DecelerationRate:开启惯性后的减速度
Snap–Enable:是否开启自动定位,开启后会将滚动结束后距离中心最近的元素定位到中心。
Snap–VelocityThreshold:速度值
Snap–Duration:持续时间
Snap–Easing:速度曲线
Draggable:是否允许滑动。

在这里插入图片描述
TempleteList:列表中使用的模版。可以放到自己子节点下面,然后隐藏。
IsMultList:是否为多列列表。(多列的话,会根据大小进行填充)
BufferCount:缓冲区大小
GroupInCellSpace:一组内每个元素的间隔。(IsMultList开启时生效)
GroupSpace:组间距。如何是垂直列表就是每一行的间距,如果是水平列表就是列间距。
PaddingHead:顶部边距
PaddingEnd:尾部边距
PaddingLeftOrUp:右边距(垂直) 上边距(水平)
PaddingRightOrDown:右边距(垂直) 下边距(水平)

使用方式

列表节点

在TempleteList中的节点绑定脚本CellBinder,其中可以设置这个元素的大小。如果有多种状态需可以设置多个大小的值。
每个节点实现ICellData接口:
在这里插入图片描述
GetTempleteIndex:返回这个节点属于的模版ID,对应的ScrollerView的TempleteList的下标。
GetSizeIndex:获取位置的大小。
OnCellViewCreat:实体创建时调用,可以存储CellBinder,因为这个是实例。
OnEnterView:进入视口调用
OnViewPosChange:在视口内,并且发送位置信息,其中localPosition本地坐标,viewNormalize在视口中归一化的位置比例信息(0-1)。
OnExitView:退出视口。
OnCellViewRecycle:回收实例调用。

初始化节点

获取到SrollView组件,创建实现了ICellData接口的数据。调用SrollView.SetDatas(list),然后调用SrollView.ShowList即可显示。
在这里插入图片描述
ShowList的接口可以实现跳转功能。

添加和删除数据

动态添加数据:SrollView.AddData(ICellData data)
动态删除数据:SrollView.RemoveData(int index)

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刘培玉--大王

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值