Flex mx:图像适合屏幕

时间:2011-04-07 18:10:33

标签: flex

我有一些图像布局,我希望该布局自动适应屏幕(这就是为什么我使用100%),但是当我加载大图像时,它超出了屏幕(实际上我可以设置mx:Image maxHeight =“ “但这个值对于不同的屏幕分辨率不会相同”

我的布局示例:

    <s:VGroup>              
        <s:BorderContainer borderStyle="solid"  width="100%" height="100%>
            <s:Scroller left="2" right="2" top="2" bottom="2">
                <s:Group id="group"> 
                    <mx:Image id="currImg" />
                </s:Group>
            </s:Scroller>   
        </s:BorderContainer>
         <!-- .....  -->
        </s:VGroup>

更新:最适合我的解决方案

<s:VGroup width="100%" height="100%">               
   <s:BorderContainer  borderStyle="solid"  width="100%" height="100%">
    <s:Scroller left="2" right="2" top="2"  bottom="2"maxWidth="{mx.core.FlexGlobals.topLevelApplication.widht}"  maxHeight="{mx.core.FlexGlobals.topLevelApplication.height}">
       <s:Group id="group" > 
        <mx:Image id="currImg" />

2 个答案:

答案 0 :(得分:2)

您需要将所有容器的高度/宽度设置为100%。

<s:VGroup width="100%" height="100%">              
   <s:BorderContainer borderStyle="solid"  width="100%" height="100%">
      <s:Scroller left="2" right="2" top="2" bottom="2">

                    <mx:Image id="currImg" width="100%" height="100%" scaleContent="true" />
      </s:Scroller>   
   </s:BorderContainer>
</s:VGroup>

答案 1 :(得分:1)

假设您希望Image与应用程序的大小相同(假设您使用的是Flex 4),则可以使用:

maxHeight="{FlexGlobals.topLevelApplication.height}"

这会将图像的最大高度设置为与应用程序相同的高度。