Raywenderlich UI搭建(一)

Unity 版本

Unity2019.4

代码下载地址

Introduction to Unity UI – Part 1

创建 MenuScene

Project 窗口右键创建新的场景,名字为 MenuScene

在这里插入图片描述

导入图像和字体

RW下新建 UI 目录, 解压下载资源 UI Assets, 拖入到 Unity 中:
在这里插入图片描述

注意检查下导入图片的格式设置,必须为 Sprite
图片格式处理脚本 AssetImport, 放到 Editor(需要在 Assets 中新建一个)。

添加第一个UI

打开 MenuScene 场景,Hierarchy 右键 - UI - Image,设置 ImagePosXPosY 为 0。
在这里插入图片描述
Canvas: 所有的 UI 都需要放在画布上。
EventSystem:处理输入事件、光线、投影等。

设置菜单背景

1.重命名上一步添加的 ImageBackground
2.选中 BackgroundInspector 面板添加背景图片:
在这里插入图片描述
3.点击 BackgroundImage 组件的 Set Native Size,调整大小 width = 1136 和 Height = 640。
在这里插入图片描述
在这里插入图片描述

Canvas Scalar 的使用

1.由于摄像机的位置和图片的尺寸等因素,图片并没有完全的显示,这时候需要 Canvas Scalar 来处理。
2.选择 CanvasInspector 面板显示该组件:
在这里插入图片描述
3.UI Scale Mode:UI 元素的缩放方式:

  • Constant Pixel Size:无论屏幕大小如何,UI 元素都保持相同的像素大小。默认值。
  • Scale With Screen Size:屏幕越大,UI 元素越大。
  • Constant Physical Size:无论屏幕大小和分辨率如何,UI 元素都保持相同的物理大小。

4.设置
Mode 改为 Scale With Screen Size
在这里插入图片描述
5.切换到IOS平台
File - Building Settings...
在这里插入图片描述
6.切换到 IPone X 系列,直到会出现下列的图片(两边蓝色):
在这里插入图片描述
7.Hierarchy 面板选择 Background ,添加 Aspect Ratio Fitter 组件,Aspect Mode 选择 Envelope Parent

添加页面标题

Canvas 中新添加一个 Image图像,重命名为 Header,设置 Source Image,点击 Set Native Size
在这里插入图片描述

设置 Rect Transform

1.设置 Header 的相对布局为 Top-CenterPosX=0PosY=-100
在这里插入图片描述
2.注意到上面的 floor 部分没有显示,修复进行下面设置:

  • 选择 Background
  • 禁用 Aspect Ratio Filter
    在这里插入图片描述
  • 修改 PivotY 为 0。
  • 启用 Aspect Ratio Filter

添加开始按钮

选中 Canvas,右键添加 UI - Button

  • 重命名 StartButton
  • 设置 Rect TransformAnchorsbottom-stretch
  • 设置 X(Min: 0.2, MAX:0.8)
  • 设置 LeftRight 为 123。
  • 设置 Pivot(X: 0.5,Y:0)
  • 设置高为 80。
  • 设置 Pos Y 为 300。
  • 设置 StartGame 按钮的子组件 Text
    在这里插入图片描述

按钮的样子

在这里插入图片描述

安装 Sprite 编辑器

右键 Package - View In Package Manager
在这里插入图片描述

编辑按钮的背景图片

1.分别编辑图片 btn_9slice_highlighted、btn_9slice_pressed 、btn_9slice_normal imageSprite Editor 进行编辑 ):
在这里插入图片描述
2.修改下面4个参数, 点击 Apply 保存:
在这里插入图片描述
3.选择 StartButton 按钮,设置下面选项:
在这里插入图片描述
4.设置字体
在这里插入图片描述
5. 字体颜色选择白色。
在这里插入图片描述

设置按钮

1.复制 StartButton 按钮,重命名为 SettingButton
在这里插入图片描述
2.修改位置信息
Anchors 修改为 Bottom-stretch
在这里插入图片描述
3.设置按钮文本
在这里插入图片描述

添加 Scene到 Build

如果有多个场景,需要把场景添加到构建列表

File - Building Setting... - Add Open Scene

创建 UIManager

1.新建 GameObject,重命名为 UIManager
2.RW 目录创建 Scripts - UIManager 脚本。

	using UnityEngine;
	using UnityEngine.SceneManagement;
	
	public class UIManager : MonoBehaviour
	{
	    public void StartGame()
	    {
	        SceneManager.LoadScene("RocketMouse");
	    }
	}

3.挂载脚本到 UIManager 对象。
在这里插入图片描述
4.绑定 StartButton 事件
在这里插入图片描述
5.将 RW/Scenes/RocketMouse 场景添加到构建列表。
6.保存,启动游戏。

文献

[1] 资源下载
[2] 画布缩放器 (Canvas Scaler)
[3] 宽高比适配器 (Aspect Ratio Fitter)
[4] Introduction to Unity UI – Part 1
[5] Introduction to Unity UI – Part 2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值