UGUI之Horizontal Layout Group组件介绍

Horizontal Layout Group是HorizontalOrVerticalLayoutGroup的子类,HorizontalOrVerticalLayoutGroup又是LayoutGroup的子类

脚本截图如下:
UGUI之Horizontal Layout Group组件介绍_第1张图片

图中包括以下属性:
1、Padding:RectOffset类型,矩形偏移
源码如下:

public sealed class RectOffset
{
    public RectOffset();
    public RectOffset(int left, int right, int top, int bottom);

    ~RectOffset();

    public int bottom { get; set; }       //底边缘
    public int horizontal { get; }        //水平
    public int left { get; set; }         //左边缘
    public int right { get; set; }        //右边缘
    public int top { get; set; }          //顶边缘
    public int vertical { get; }          //垂直

    public Rect Add(Rect rect);           //向一个Rect添加边框偏移
    public Rect Remove(Rect rect);        //从一个Rect移除边框偏移
    public override string ToString();      
}

如下面几个图中:
图一:默认情况

UGUI之Horizontal Layout Group组件介绍_第2张图片

图二:只改变Padding

UGUI之Horizontal Layout Group组件介绍_第3张图片

当Padding中的边缘大小过大时,会自动缩放布局元素以保持布局元素均在边框内,从下图可以看出
图三
UGUI之Horizontal Layout Group组件介绍_第4张图片

2、Spacing:float类型
布局元素之间的间隔

图四:只改变Spacing

UGUI之Horizontal Layout Group组件介绍_第5张图片

当Spacing过大,会自动缩放布局元素以保持布局元素均在边框内,从下图可以看出布局元素宽度缩小了
图五:

UGUI之Horizontal Layout Group组件介绍_第6张图片

3、Child Alignment:TextAnchor枚举类型,文本锚点
源码如下:

public enum TextAnchor
{
    UpperLeft = 0,           //上左
    UpperCenter = 1,         //上中
    UpperRight = 2,          //上右
    MiddleLeft = 3,          //中左
    MiddleCenter = 4,        //中中
    MiddleRight = 5,         //中右
    LowerLeft = 6,           //下左
    LowerCenter = 7,         //下中
    LowerRight = 8           //下右
}

4、Child Force Expand:有两个可选
(1)Width:是否强行扩大布局元素宽度以填补额外可用的空间
(2)Height:是否强行扩大布局元素高度以填补额外可用的空间
下面结合截图来说明:
图六:勾选Width,填补宽度
UGUI之Horizontal Layout Group组件介绍_第7张图片

图七:勾选Height,填补高度
UGUI之Horizontal Layout Group组件介绍_第8张图片

图八:勾选Width和Height,填补宽度和高度
UGUI之Horizontal Layout Group组件介绍_第9张图片

从以上三图结合图一默认图可以看出其具体效果

实际开发中,我经常结合Content Size Fitter组件一起使用
UGUI之Horizontal Layout Group组件介绍_第10张图片

关于UI布局,大家开发的多了,就熟练了。

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

你可能感兴趣的:(UGUI)