Ejemplo n.º 1
0
        void UpdateDirection()
        {
            Layout.Stacking = isHorizontal ? EasyLayout.Stackings.Vertical : EasyLayout.Stackings.Horizontal;

            if (UpdateContentSizeFitter)
            {
                var fitter = Layout.GetComponent <ContentSizeFitter>();
                if (fitter)
                {
                    fitter.horizontalFit = (IsHorizontal) ? ContentSizeFitter.FitMode.PreferredSize : ContentSizeFitter.FitMode.Unconstrained;
                    fitter.verticalFit   = (!IsHorizontal) ? ContentSizeFitter.FitMode.PreferredSize : ContentSizeFitter.FitMode.Unconstrained;
                }
            }

            var layout_rect_transform = Layout.transform as RectTransform;

            layout_rect_transform.pivot = new Vector2(0, 1);
            if (isHorizontal)
            {
                layout_rect_transform.anchorMin = new Vector2(0, 0);
                layout_rect_transform.anchorMax = new Vector2(0, 1);
            }
            else
            {
                layout_rect_transform.anchorMin = new Vector2(0, 1);
                layout_rect_transform.anchorMax = new Vector2(1, 1);
            }
            layout_rect_transform.sizeDelta = new Vector2(0, 0);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="UIWidgets.EasyLayoutBridge"/> class.
        /// </summary>
        /// <param name="layout">Layout.</param>
        /// <param name="defaultItem">Default item.</param>
        /// <param name="updateContentSizeFitter">Update ContentSizeFitter on direction change.</param>
        public EasyLayoutBridge(EasyLayout.EasyLayout layout, RectTransform defaultItem, bool updateContentSizeFitter = true)
        {
            Layout                  = layout;
            DefaultItem             = defaultItem;
            UpdateContentSizeFitter = updateContentSizeFitter;

            fitter = Layout.GetComponent <ContentSizeFitter>();
        }