Unity+Slua实现游戏常用UI组件(一)——滚动表格组件

本文介绍了如何使用Unity的UGUI结合Slua实现高度灵活的滚动表格组件LScrollView。LScrollView支持元素动态大小、间距调整等功能,但存在代码复杂度高和滚动定位不便的问题。为简化场景,作者提供了适用于元素大小固定的单元素滚动表格组件和多元素滚动表格组件。文章详细阐述了LScrollView的核心特性和注意事项,并提供了项目源码链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 补充说明
    LScrollView是一个允许内部元素1动态改变大小并自动布局的滚动表格组件
    高度的灵活性必然会有其局限性,比如
    • 代码的复杂度较高,特别是在增加 元素与边界的间隔(padding),元素与元素之间的间隔(gap) 这两个功能之后,布局相关的代码并不能简洁易懂
    • 当某元素不在当前显示范围,而想让组件滚动到该元素所在位置时,因为高度不确定,处理起来不方便,目前的解决方案是先调用SetStartIndex(),再调用SetData(),最终的效果略有瑕疵
      这时回过头来评估下游戏的实际业务,其实游戏中需要滚动表格组件下所有元素动态变化大小是极其少见
    • 1、大部分情况下滚动表格组件的所有元素的大小相同
    • 2、小部分情况下会有多种不同类型的元素
    • 3、极少数情况会要求同一种元素能动态改变大小
      所以我针对前两种情况又提取了两个组件
      如果滚动表格组件下所有元素大小相同的,可以用单元素滚动表格组件
      如果滚动表格组件下有多种不同高度元素的,可以用多元素滚动表格组件
      如果遇到第三种情况,才用滚动表格组件——LScrollView

  1. LScrollView效果展示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值