标签:float standard 适应 width Unity aspect device 屏幕 height
Unity之屏幕自适应
哪个小伙伴能告诉我为什么CSDN我上传资源之后,下载费用是5积分啊!?怎么改为0呢,小黑苦恼啊!!!!!!!
一、前言
先言归正传吧,今天小黑给大家带来一个非常不错的分享——屏幕自适应
小伙伴们,你们是不是很期待呢?那我们接直入主题,出发!
二、屏幕自适应
屏幕自适应有很多种,今天我会把我常用的两种分享给大家,可能会有大牛有更好的办法,希望也能多多指教,小黑先在这里谢过啦~
1:通过代码
废话不多说,上代码!
写完之后记得要挂载到Cavans上边
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class Adaptive : MonoBehaviour {
void Start () {
float standard_width = 1920f; //初始宽度 根据你们的需求来编写
float standard_height = 1080f; //初始高度 初始宽高(分辨率)
float device_width = 0f; //当前设备宽度
float device_height = 0f; //当前设备高度
float adjustor = 0f; //屏幕矫正比例
//获取设备宽高
device_width = Screen.width;
device_height = Screen.height;
//计算宽高比例
float standard_aspect = standard_width / standard_height;
float device_aspect = device_width / device_height;
//计算矫正比例
if (device_aspect < standard_aspect)
adjustor = standard_aspect / device_aspect;
CanvasScaler canvasScalerTemp = transform.GetComponent<CanvasScaler>();
if (adjustor == 0)
canvasScalerTemp.matchWidthOrHeight = 1;
else
canvasScalerTemp.matchWidthOrHeight = 0;
}
}
2:通过这是Canvas画布
①:点开我们的Canvas,然后转到Inspector面板
②:注意看Canvas Scaler(Script)
3:简单实用的两个屏幕自适应就说完啦
各位客官,点个赞再走啊 ♥♥♥♥♥♥
接下来给大家列出来之前的相关文章:
1: Unity跑在Awake之前的方法
2:Unity打包资源,进行后台加载
3:Unity项目优化——Web版
程序的道路上学习永不停止,探索随时进行。
Let’s go. Just do it. We can.
最后最后,小黑祝大家中秋节快乐,快吃月饼啦!!!
标签:float,standard,适应,width,Unity,aspect,device,屏幕,height 来源: https://blog.csdn.net/Wenhao_China/article/details/100768977
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。