Unity Ugui 实现 列表item居中放大效果

本文介绍了如何在Unity UGUI中创建一个列表,使得用户可以通过拖拽或点击图片,使图片居中并放大。通过使用Scroll View组件和Grid Layout Group,记录每个列表项到滚动视图中心点的距离,拖拽时动态判断并更新最接近中心的项,使用插值Lerp平滑移动和缩放。同时,通过Button组件监听点击事件,也能实现列表项的居中放大功能。

通过拖拽或者点击图片 使图片居中放大

使用scroll view组件 并为子节点conter添加 Grid layout Group 组件

实现逻辑

记录每个item到scroll中心点的距离的数据

在拖拽过程中 通过当前conter的localpostion位置 去判断离中心点距离最短的item

找到对应item 让conter的localpostion通过插值lerp 移动到对应的位置 使其item居中并缩放

水平拖拽 这里知晓localpostion关于x的信息即可

垂直拖拽 即y。

 

 //初始化函数
    private void InitView()
    {
        //获取组件ScrollRect
        scrollRect = transform.GetComponent<ScrollRect>();
        //获取Scrollview下的conter
        content = scrollRect.content;
        //设置svcoll属性为无限制
        scrollRect.movementType = ScrollRect.MovementType.Unrestricted;
        //对应的GridLayoutGroup组件
        layoutGroup = content.GetComponent<GridLayoutGroup>();    
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值