Unity UI学习(3)——背包的实现

本次背包系统的实现不涉及到脚本代码。需要实现的功能是,物品在背包里面能够被有序的排列展示。在物品不能够被完全展示的情况下,能够使用滑动条的形式展现出来。

本次涉及到的unity组件有:

1、Scroll Rect,可滑动的区域,在这里通常需要拖入三个UI控件,一个是背包里面的展示内容,一个是规定的展示范围布局,一个是可拖动的 Scroll Bar;

2、Mask 用于规定背包物品的显示范围 ;

3、Grid Layout Group 自动对背包物品进行排列,可以自定义排列的相关设置 ;

4、Content size fitter 自行对页面进行更好地适配,Unconstrained不执行任何调整, MinSize调整内容的最小大小 ,PreferredSize自动根据内容来调整大小。

具体的实施办法:

1、建立一个空物体命名为backpackwindow,

2、在backpackwindow下创建两个三个UI Image,一个空物体。

3、第一个Image设置背景图片,改名为backgroud,并改变成合适的背景大小作为背包窗口的大小。

4、将第二个Image 图片设置关闭按钮样式(窗口右上角的x型符号),改名为shutdown,可以增加一个Button组件。在没有合适的图片情况可以采用一个Text UI显示X。改变合适的大小,拖动到窗口的右上角。

5、将第三个Image的图片替换为一个装饰图片,改名为decoration,然后下属创建一个Text UI显示背包两个字。改变合适的大小并拖动到背包窗口的上方正中。

6、将空物体命名为backpack,并下属创建一个空物体,一个UI Image,一个Scroll Bar,对backpack空物体绑定一个组件Scroll Rect,并取消Inspecor界面的Horizontal勾选框(因为本Demo只需要向下滑动)。

7、新建的Image改变背景图,改名为Mask,并做合适的大小调整,使其占据窗口的展示中心,然后绑定一个组件Mask。

8、对物体改名为Grid,并绑定两个组件,一个Grid Layout Group,另一个Content size fitter,对Content size fitter中的Vertical属性做出调整选择preferredSize。

9、在Grid下面创建大量的背包物品Item(实际上就是大量的UI Image)。

10、对Scroll Bar的Direction做出选择,选择Bottom To TOP,并做合适的大小改变,使其高度能够和物品展示的内容窗口(内容窗口就是绑定了mask组件的Image大小)一致,同样可以对其中的图片背景做出相应调整。

11、将Grid拖入到backpack的Scroll Rect里的Content里面,将Mask拖入到Scroll Rect里的Viewport,将Scroll Bar拖入到Scroll Rect里的Vertical Bar。至此背包UI布局完成。

Demo展示见下图:


以上,祝好!

猜你喜欢

转载自blog.csdn.net/weixin_42552233/article/details/81022014
今日推荐