Unity-UGUI根据标签宽度实现瀑布流布局–FlowLayoutGroup

  • Post author:
  • Post category:其他


这里写图片描述

UGUI如果要实现如上图的布局效果,很可惜,UGUI没有自带这个功能,UGUI的布局无非就是

Horizontal Layout Group



Vertical Layout Group



Grid Layout Group

三种布局。但是这三种布局都是很平凡的布局,没有带有这种特殊布局的。唯一和它相像的就是

Grid Layout Group

,但是

Grid Layout Group

要求它所有子对象都是定宽定高的。像这样每个子对象宽高都不一样就不好办了。

不过可以通过

FlowLayoutGroup

这个插件来实现这个功能,这个也称不上是插件,因为就是一个纯源码的Component。先上这个Demo的源码吧。


立即下载


不知道为何下载下来没有附带脚本,发一个基于百度盘的链接:

FlowLayoutGroup.unitypackage

用法很简单,就是和UGUI自带的布局组件一样的。

这里写图片描述



Canvas

下新建一个空物体,添加

FlowLayoutGroup

脚本,然后在这个物体下添加

Image

,并为Image挂上

Horizontal Layout Group

脚本

这里写图片描述

再往Image下添加一个Text组件,现在就可以输入Text的文本,来改变Image的宽度实现瀑布流效果。

解释为什么要在Image上添加

Horizontal Layout Group

脚本,是为了实现更具Text文字长度来动态改变Image的宽度。

如果有什么不懂的具体可以看源码,源码里面包括了

FlowLayoutGroup

脚本。



版权声明:本文为xieweiaaa原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。