UGUI源码解析——HorizontalLayoutGroupVerticalLayoutGroupGridLayoutGroup

Posted Hello Bug.

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UGUI源码解析——HorizontalLayoutGroupVerticalLayoutGroupGridLayoutGroup相关的知识,希望对你有一定的参考价值。

一:前言

HorizontalLayoutGroup和VerticalLayoutGroup继承自HorizontalOrVerticalLayoutGroup,分别为水平布局组件和垂直布局组件
GridLayoutGroup继承自LayoutGroup,为网格布局组件,它同时实现了水平和竖直布局


二:源码解析


以上四个方法由布局系统自动调用,这三种布局组件都实现了以上四个方法分别去实现计算和设置不同种类的布局
CalculateLayoutInputHorizontal和CalculateLayoutInputVerticall方法实现了计算并设置m_TotalMinSize、m_TotalPreferredSize、m_TotalFlexibleSize属性值,调用了子类LayoutGroup中的SetLayoutInputForAxis方法
SetLayoutHorizontal和SetLayoutVertical方法实现了计算并设置子物体的位置和大小,调用了子类LayoutGroup中的SetChildAlongAxisWithScale和SetChildAlongAxis方法

以上是关于UGUI源码解析——HorizontalLayoutGroupVerticalLayoutGroupGridLayoutGroup的主要内容,如果未能解决你的问题,请参考以下文章

UGUI源码解析——IMeshModifier

UGUI源码解析——ICanvasElement

UGUI源码解析——LayoutUtility

UGUI源码解析——Graphic

UGUI源码解析——VertexHelper

UGUI源码解析——LayoutGroup