性能宽度=“100%”和左=“0”右=“0”哪个更好?

csga3l58  于 2022-09-21  发布在  Apache
关注(0)|答案(1)|浏览(198)

在最新的Adobe Flex SDK 4.6中,从性能Angular 来看,哪个更好?

<s:Group width="100%" height="100%"/>

<s:Group left="0" right="0" top="0" bottom="0"/>

谢谢。

zazmityj

zazmityj1#

BasicLayout.updateDisplayList()中,我发现(在每个子元素的循环中):

if (!isNaN(percentWidth))
            {
                var availableWidth:Number = unscaledWidth;
                if (!isNaN(left))
                    availableWidth -= left;
                if (!isNaN(right))
                     availableWidth -= right;

                childWidth = Math.round(availableWidth * Math.min(percentWidth * 0.01, 1));
                elementMaxWidth = Math.min(layoutElement.getMaxBoundsWidth(),
                    maxSizeToFitIn(unscaledWidth, hCenter, left, right, layoutElement.getLayoutBoundsX()));
            }
            else if (!isNaN(left) && !isNaN(right))
            {
                childWidth = unscaledWidth - right - left;
            }

身高也一样。

所以,看起来是这样的:

1.Percent Width优先于topLeft(如果两者都设置)
1.topLeft计算起来比perenWidth简单(四舍五入、函数调用和条件一次减法)
1.可以使用topLeft作为样式声明。

此外,大多数Flex4皮肤都是基于--我认为也是出于性能原因。

相关问题