unity通过VerticalLayoutGroup组件来制作折叠菜单

今天项目上的需求,上网找了一下有通过给UI添加碰撞来实现这个功能的,发现有点麻烦,自己捣鼓了一下,发现unity自带的VerticalLayoutGroup组件可以很快的实现这个功能,给大家分享一下。

首先新建一个空物体,添加VerticalLayoutGroup这个组件,注意将其参数改为下图所示。这样该物体的子物体就可以按照其在unity中的层级来自动排序了,而且子物体的的大小就可以保持其原有的大小。隐藏或者删除某个子物体后,余下的子物体就会填充之前物体所占用的空间。这个就是我们做菜单折叠所用到的原理了。


如果觉得直接隐藏或者删除的效果不好看的话,可以在代码中修改子物体的sizedelta或者scale来达到平滑的效果。

最后给出我写的一个demo

点击打开链接  密码:i7fe


阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页