UGUI研究院之设置全屏图
rectTransform.sizeDelta = new Vector2(Screen.width,Screen.height);
在UGUI中想设置一张全屏的背景图,但是直接设置 screen.width和screen.height后发现在有些分辨率下还是不能全屏。
把如下脚本挂在需要全屏的Image对象上即可。
using UnityEngine; using System.Collections; public class UIMaskLayer : MonoBehaviour { void Start() { int width = Screen.width; int height = Screen.height; int designWidth = 960;//开发时分辨率宽 int designHeight = 640;//开发时分辨率高 float s1 = (float)designWidth / (float)designHeight; float s2 = (float)width / (float)height; if(s1 < s2) { designWidth = (int)Mathf.FloorToInt(designHeight * s2); } else if(s1 > s2) { designHeight = (int)Mathf.FloorToInt(designWidth / s2); } float contentScale = (float)designWidth/(float)width; RectTransform rectTransform = this.transform as RectTransform; if(rectTransform != null){ rectTransform.sizeDelta = new Vector2(designWidth,designHeight); } } }
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: Vue路由开启keep-alive时的注意点
- 下一篇: C# 中 MongoDB 更新操作