Unity的Canvs下提供了一個簡單的設定方法
如果想動态的調整,最好的方法是用代碼來控制
//以1920x1080為基準,螢幕根據高度的不同等比例縮放,适配控件的大小
public void RectAdaptY(RectTransform rect)
{
float scale = Screen.height / 1080f;
Debug.Log("scale = " + scale);
rect.sizeDelta = new Vector2(scale, scale) * rect.sizeDelta;
}
//以1920x1080為基準,螢幕根據寬度的不同等比例縮放,适配控件的大小
public void RectAdaptX(RectTransform rect)
{
float scale = Screen.width / 1920f;
rect.sizeDelta = new Vector2(scale, scale) * rect.sizeDelta;
}
使用
RectAdaptY(button1.GetComponent());
效果: