2010-03-09 84 views
1

我有一个ViewStack内的2 VBox容器和视图堆栈是在HBox里面,我已经设置了vboxes的高度和宽度都为100%,视图堆栈也是一样的。 我的问题是,viewstack不显示容器childs的全部内容只是其中的一部分,并显示一个垂直滚动,虽然宽度被拉伸以填充容器hbox的整个宽度,但viewstack为什么不延伸要显示其孩子的100%身高,并仅为宽度显示?ViewStack高度问题

主要申请包含含有加载包含则ViewStack

主应用程序的模块的模块加载器控制的HBox中:

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" verticalScrollPolicy="on" 
     xmlns:custom="components.*"> 
     <custom:RepeatingImage source="images/up_bg.gif" width="100%" height="100%" repeatX="true" repeatY="false" /> 
     <mx:Canvas width="100%"> 
      <custom:header id="header" /> 
      <mx:HBox id="content" horizontalGap="12" width="100%" x="12" y="180"> 
       <mx:ModuleLoader id="contentModuleLoader" width="100%" />       
       <custom:sidead /> 
      </mx:HBox> 
     </mx:Canvas> 
     <custom:footer id="footer" /> 
    </mx:Application> 

模块:

<mx:Module xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:custom="components.*" width="100%"> 
<mx:LinkBar dataProvider="stack" /> 
<mx:ViewStack id="stack" width="100%"> 
<mx:VBox id="Content" label="First View" width="100%"> 
     <mx:Canvas width="100%"> 
      //controls here 
     </mx:Canvas> 

     <mx:Canvas width="100%"> 
      <mx:HBox width="100%"> 
       <mx:VBox width="100%"> 
        //more controls and containers 
       </mx:VBox> 
      </mx:HBox> 
     </mx:Canvas> 
    </mx:VBox> 

    <mx:VBox label="Second View"> 
//controls 
</mx:VBox> 
</mx:ViewStack> 
</mx:Module> 
+0

你可以发布一些示例代码?设置每个组件的宽度和高度的线应该是我们需要的。 – invertedSpear 2010-03-09 15:31:24

+0

我添加了代码 – Yasmine 2010-03-10 11:50:29

回答

0

一致认为这将有助于查看代码,但在我看来,像HBox可能是约束UI元素 - 确保它的大小很大足以不需要ViewStack中的滚动条。

您可以经常使用backgroundColorbackgroundAlpha或通过拨入FlexSpy或类似的东西来诊断类似问题。

0

为什么不则ViewStack延伸到 显示其孩子的100%的高度和 会为仅在宽度上?

我应该昨天抓到了这个。将任何设置设置为100%都适合父容器,而不适合儿童。我试着遵循你的代码,并且必须承认我迷失了它。我很确定问题存在于视图堆栈上方(在父/子关系中,不一定按代码顺序)

+0

没有问题不在视图堆栈之上,因为在添加视图堆栈之前,只有第一个视觉盒子和它的所有内容都是可见的,但是当我需要此模块的另一个视图时,我添加了另一个视觉盒子,在viewstack中,一旦我做到了,只有第一个vbox的四分之一被显示,并且有一个滚动条,如果我删除viewstack所有的vbox控件都显示 – Yasmine 2010-03-10 16:22:09

0

您是否尝试过修改填充属性?

+0

修改填充什么? – Yasmine 2010-03-10 16:16:41

+0

Viewstack的填充和V/HBox – ALOToverflow 2010-03-10 17:48:59

0

在ViewStack中有一个属性“resizeToContent”,您可以将其设置为true。这应该做你想做的。

7

您是否尝试过使用viewStack的resizeToContent属性?

+0

是的我试过了,解决了我的问题 – Yasmine 2010-03-24 11:18:17