最近开发的项目要做手机适配,然后自己总结了一下适配的方法。
针对适配的机型2:1(36881242),16:9(19201080),4:3(ipad适配)。总结一些比较又实用的方法。
1.简单的适配方法也没什么介绍的(靠左,靠右,靠上,靠下,居中,跟着Canvas全屏适应)。
2自己拉锚点到合适的位置。
图片.png
3.从16:9的分辨率到4:3的分辨率,高度相对增加了很多。对物体做一个scale的调整方案(需要一个合理的代码)。
public class PanelScale:MonoBehaviour
{
private readonly float _standPercent = 1.7777777777777777777777f;
void Awake()
{
var screenPercent = Screen.width / (float)Screen.height;
var scale = screenPercent / _standPercent;
if (screenPercent < _standPercent)
{
transform.localScale = new Vector3(scale, scale, scale);
}
else
{
}
var grid = transform.GetComponent<GridLayoutGroup>();
if (grid != null)
{
if (screenPercent < _standPercent)
{
}
else
{
var sourcePadding = grid.padding;
grid.padding = new RectOffset(0, sourcePadding.right, sourcePadding.top, sourcePadding.bottom);
grid.childAlignment = TextAnchor.UpperCenter;
}
}
}
}
4中心点的问题,中心点默认是(0.5,0.5),做缩放的时候从中间开始缩放,如果把中心点调到某一个特定位置,只会在这个位置为中心做缩放。