Exemplo n.º 1
0
    private void Refresh()
    {
        if (_rt == null)
        {
            return;
        }

        if (!IsResizeSourceChanged() && !_rrChanged)
        {
            return;
        }

        _lastRS = _rs;

        if (_rs == ResizeSource.ScreenSize)
        {
            _rt.SetInsetAndSizeFromParentEdge(RectTransform.Edge.Left, Screen.safeArea.x, Screen.safeArea.width);
            _rt.SetInsetAndSizeFromParentEdge(RectTransform.Edge.Bottom, Screen.safeArea.y, Screen.safeArea.height);
        }
        else if (_rs == ResizeSource.Customize)
        {
            Rect scaledSafeArea = ResolutionUtility.GetScaledSafeArea();
            _rt.SetInsetAndSizeFromParentEdge(RectTransform.Edge.Left, scaledSafeArea.x, scaledSafeArea.width);
            _rt.SetInsetAndSizeFromParentEdge(RectTransform.Edge.Bottom, scaledSafeArea.y, scaledSafeArea.height);
        }
    }
Exemplo n.º 2
0
    private void Refresh()
    {
        if (_cs == null)
        {
            return;
        }

        if (!IsResizeSourceChanged() && !IsScreenOrientationChanged() && !IsResolutionChanged())
        {
            return;
        }

        _lastRS         = _rs;
        _lastScreenOri  = Screen.orientation;
        _lastResolution = new Vector2(Screen.width, Screen.height);

        if (_rs == ResizeSource.ScreenSize)
        {
            _cs.referenceResolution = new Vector2(Screen.width, Screen.height);
            _cs.screenMatchMode     = CanvasScaler.ScreenMatchMode.MatchWidthOrHeight;
            _cs.matchWidthOrHeight  = Screen.width > Screen.height ? 0 : 1;
        }
        else if (_rs == ResizeSource.Customize)
        {
            Vector2 resolution = ResolutionUtility.GetCustomizedReferenceResolution();
            float   match      = ResolutionUtility.GetMatchWidthOrHeight();

            _cs.referenceResolution = new Vector2(resolution.x, resolution.y);
            _cs.screenMatchMode     = CanvasScaler.ScreenMatchMode.MatchWidthOrHeight;
            _cs.matchWidthOrHeight  = match;
        }

        if (onChanged != null)
        {
            onChanged();
        }
    }