Unity小技巧之图文混合自适应
2018-02-27 本文已影响48人
joshuaAS
最近碰到一个需求,需要在一行中既有数字又有图片同时数字的长度可能是一,也可能是二是三,此时数字后的图片也要相应做出调整。
我这边暂时想了个方法,利用下图的两个组件来实现。

在下图是层级结构

其中组件是挂在父集Parent上的,同时为了希望得到左对齐,图文数字是向右扩展的效果:

我将Pivot设置成了(0,0.5)。

这是初始效果,我用了个鬼脸作为基准进行对比。

这是数字增加后的效果,全部依靠Content Size Fitter组件计算即可,因为我是需要水平调整,所以我选择了

这样的参数选择,同时因为水平扩展的缘故

我直接选择了Horizontal Layout Group而不是GridLayout。
之后可以通过调整字体大小来与图片进行匹配,为了保证他们在一条线上,Horizontal Layout Group组件的Child Alignment我选择了Middle Left这个值。
这样效果暂时实现了,之后如果有效果的调整或者更好的实现方法我会在更新文档。