天天看點

Unity-UI控件在不同裝置等比例縮放顯示

Unity的Canvs下提供了一個簡單的設定方法

Unity-UI控件在不同裝置等比例縮放顯示

如果想動态的調整,最好的方法是用代碼來控制

//以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());

效果:

Unity-UI控件在不同裝置等比例縮放顯示
Unity-UI控件在不同裝置等比例縮放顯示