Unity3d UGUI 实现底部UI自适应的功能(含工程)

Unity3d UGUI 实现底部UI自适应的功能(含工程)

前言

UI的自适应常常在项目中使用到,特别手游中,不同比例屏幕的手机,如果能考一套UI自适应显示,能省去不少的开发工作量。这里只是浅浅的讨论一下,这种居中靠底部的UI我们怎么实现自适应。

效果

自由分辨率下,自由拖动的效果:

分辨率1效果:
Unity3d UGUI 实现底部UI自适应的功能(含工程)_第1张图片

分辨率2效果:
Unity3d UGUI 实现底部UI自适应的功能(含工程)_第2张图片

分辨率3效果:

Unity3d UGUI 实现底部UI自适应的功能(含工程)_第3张图片

实现

如下图的UI:
Unity3d UGUI 实现底部UI自适应的功能(含工程)_第4张图片

我们首先要思考各个部分的分布,红色部分是一个固定图片/内容显示,中间黄色部分是一个向上滚动的列表,右侧绿色部分是一个上滚动的图片列表;我们暂定的适配方式是高度固定,宽度动态适配,这三部分中能动态的就是绿色部分,可以动态展示图片的列数。

UI搭建

搭建的UI节点:

Unity3d UGUI 实现底部UI自适应的功能(含工程)_第5张图片

这里不做多的细节描述,除了图片文字组件,就用到了ScrollRect 、 Vertical Layout Group和 Grid Layout Group等组件。

UI自适应

Canvas Scaler的设置:
Unity3d UGUI 实现底部UI自适应的功能(含工程)_第6张图片

这里进行了高度匹配的设置,宽度则会进行动态宽度,如果对该组件不了解的,可以参考:
https://blog.csdn.net/qq_33789001/article/details/117781577 ,在此文中我已经进行了详细的测试和展示了。

根节点,以靠底拉伸的形式:

Unity3d UGUI 实现底部UI自适应的功能(含工程)_第7张图片

背景图全拉伸:
Unity3d UGUI 实现底部UI自适应的功能(含工程)_第8张图片

红黄框上下居中,居左:
Unity3d UGUI 实现底部UI自适应的功能(含工程)_第9张图片

右侧的图片列表(根节点)全拉伸:
Unity3d UGUI 实现底部UI自适应的功能(含工程)_第10张图片

图片列表使用置顶拉伸:

Unity3d UGUI 实现底部UI自适应的功能(含工程)_第11张图片

同时设置Content Size Fitter 高度适配, Grid Layout Group 的 Constraint 为Flexible。

工程

https://download.csdn.net/download/qq_33789001/85415647

你可能感兴趣的:(Unity3D,Unity3d,UI自适应,UGUI自适应,UGUI底部自适应)