Unity UICanvas

        CanvasScaler scaler = UICanvas.transform.GetComponent();
        scaler.screenMatchMode = CanvasScaler.ScreenMatchMode.MatchWidthOrHeight;
        float ratio = (scaler.referenceResolution.x / scaler.referenceResolution.y) / (Screen.width / Screen.height);
        scaler.matchWidthOrHeight = ratio <= 1 ? 1 : 0;

Unity UICanvas_第1张图片
宽高比 如果宽高比小于等于1 说明屏幕宽度小 高度大 可以理解位竖屏,那么应该匹配高度 设置Match为1
宽高比 如果宽高比大于等于1 说明屏幕宽度大 高度小 可以理解位横屏,那么应该匹配宽度 设置Match为0

你可能感兴趣的:(Unity UICanvas)