Unity UGUI AutoLayout

unity autolayout 总共有ContentSizeFitter LayoutElement HorizontalLayoutGroup VerticalLayoutGroup GridLayoutGroup AspectRatio
ContentSizeFitter 是用来控制自身大小的,它有minimum和preferredSize和Unconstrained三个选项,子节点中如果有layoutItem就会来控制这个节点的大小。
比如我们有一个需求,一个文本后面有一个背景图,文字变多的时候背景图自适应拉伸。这时候在背景图上加一个ContentSizeFitter,然后需要加个(HorizonalLayout或者Verticallayout,
这样才能知道子节点的信息),然后把选项改成preferredSize就行。
这个相当于是子节点去控制父节点的大小。

HorizontalLayout是横向排列layout,
VerticalLayout是竖向排列layout,
GridLayout是网格状layout,
这几个都是父节点来控制子节点大小的。

layoutElement的使用不是很好理解。
有min,prefer,Flexible
如果你设置了min,不管父节点的大小是多少,该节点的大小至少是这个min值。
如果设置prefer,那么如果父节点比较大,那么就会扩大这个参数直至prefer设定值.
如果设置了Flexible,那么如果父节点满足了所有prefer,那么就会将多出来的值按比例分给flexible设定的值。

AspectRatioFitter是用来控制物体横宽比例的。

详细的参数介绍在这个博客里面
https://gameinstitute.qq.com/community/detail/117690
图文分析很清楚。

你可能感兴趣的:(游戏开发)