unity5x+UGUI屏幕自适应(多分配率适配)
1、Canvas的属性配置
2、Canvas Scaler的属性配置
3、根据不同的屏幕的比例动态修改缩放基准
- void Start ()
- {
- float standard_width = 960f; //初始宽度
- float standard_height = 640f; //初始高度
- 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;
- }
- }
将脚本挂在画布控件上。
效果
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。