最新消息
本人的小游戏“指尖游戏集”已经上线啦!!!欢迎各位来体验,希望大家多多提意见哦~
微信公众号:unity学习加油站 领取Unity游戏源码,以及各种学习资料~
**前言:**在制作游戏的UI界面时,对于不同的手机有不同的刘海屏,防止UI被打孔屏或者刘海屏遮挡,需要做UI适配
using UnityEngine;
using UnityEngine.UI;
/// <summary>
/// 注意
/// Screen.safeArea 使用屏幕空间坐标系,虽然它是一个Rect,但它的左下角才是(0,0)原点
/// </summary>
public class ScreenUtils
{
/// <summary>
/// 按画布尺寸返回画布上方安全区域外空间高度的缩放值
/// </summary>
/// <param name="canvasScaler">画布的缩放,为null则没有缩放</param>
/// <returns></returns>
public static float GetCanvasOutsideTop(CanvasScaler canvasScaler)
{
var result = Screen.height - Screen.safeArea.yMax;
if (canvasScaler != null)
{
result = result * canvasScaler.referenceResolution.y / Screen.height;
}
return result;
}
/// <summary>
/// 按画布尺寸返回画布下方安全区域外空间的高度的缩放值
/// </summary>
/// <param name="canvasScaler">画布的缩放,为null则没有缩放</param>
/// <returns></returns>
public static float GetCanvasOutsideBottom(CanvasScaler canvasScaler)
{
var result = Screen.safeArea.yMin;
if (canvasScaler != null)
{
result = result * canvasScaler.referenceResolution.y / Screen.height;
}
return result;
}
}
***注:使用Device Simulator工具包可查看各型号手机对于游戏的适配
安装步骤:
- 打开Unity的PackageManager页面,按照下图1点击
- 勾选图2中标识即可返回PackangManager页面安装工具包