UGUI之Vertical Layout Group组件介绍

本文详细对比了Unity UI中HorizontalLayoutGroup与VerticalLayoutGroup组件的区别,主要在于CalcAlongAxis与SetChildrenAlongAxis方法的参数不同,前者区分水平与垂直布局。

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

博客迁移

个人博客站点,欢迎访问,www.jiingfengji.tech

正文

VerticalLayoutGroup也是HorizontalOrVerticalLayoutGroup的子类,HorizontalOrVerticalLayoutGroup是LayoutGroup的子类,下面从源码中进行对比

namespace UnityEngine.UI
{
    [AddComponentMenu("Layout/Horizontal Layout Group", 150)]
    public class HorizontalLayoutGroup : HorizontalOrVerticalLayoutGroup
    {
        protected HorizontalLayoutGroup()
        {}

        public override void CalculateLayoutInputHorizontal()
        {
            base.CalculateLayoutInputHorizontal();
            CalcAlongAxis(0, false);
        }

        public override void CalculateLayoutInputVertical()
        {
            CalcAlongAxis(1, false);
        }

        public override void SetLayoutHorizontal()
        {
            SetChildrenAlongAxis(0, false);
        }

        public override void SetLayoutVertical()
        {
            SetChildrenAlongAxis(1, false);
        }
    }
}

namespace UnityEngine.UI
{
    [AddComponentMenu("Layout/Vertical Layout Group", 151)]
    public class VerticalLayoutGroup : HorizontalOrVerticalLayoutGroup
    {
        protected VerticalLayoutGroup()
        {}

        public override void CalculateLayoutInputHorizontal()
        {
            base.CalculateLayoutInputHorizontal();
            CalcAlongAxis(0, true);
        }

        public override void CalculateLayoutInputVertical()
        {
            CalcAlongAxis(1, true);
        }

        public override void SetLayoutHorizontal()
        {
            SetChildrenAlongAxis(0, true);
        }

        public override void SetLayoutVertical()
        {
            SetChildrenAlongAxis(1, true);
        }
    }
}

可以看出,唯一的区别就是四个重写的基方法里的调用的CalcAlongAxis、SetChildrenAlongAxis一个是false,一个是true,那么显然true表示是vertical,false表示horizontal

所以在这就不过多的对Vertical Layout Group组件做过多的介绍,用法跟 Horizontal Layout Group组件一样的用,如果对Horizontal Layout Group组件有不了解的,详情请点击这里Horizontal Layout Group组件介绍

以上知识分享,如有错误,欢迎指出,共同学习,共同进步。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值