2010-12-08 83 views
0

我遇到了VBox的resize事件和調整大小效果的小問題。Flex 3 - 調整大小效果「問題」?

我有這樣的事情:

<mx:VBox id="container" 
    backgroundColor="0xFFFFFF" 
    backgroundAlpha=".9" 
    paddingTop="15" 
    paddingLeft="15" 
    paddingBottom="15" 
    verticalGap="5" 
    width="210" 
    maxHeight="340" 
    resizeEffect="{resize}" 
    verticalScrollPolicy="off" 
    borderStyle="solid"> 
. 
. 
. 
</mx:VBox> 
<mx:Resize id="resize"/> 

的VBOX裏面,我有一個摺疊/展開取決於用戶交互的一些項目。問題是,當用戶擴展一個項目時,vbox調整到最大高度,然後收縮以適應實際高度。

有誰知道如何防止它調整到最大高度並縮回到它的實際高度?

感謝您的任何幫助,您可以提供=)

問候。 BS_C3

+0

我的猜測是重寫VBox的updateDisplayList並處理那裏的大小調整,以確保VBox不會擴大到比你需要的大。不過,根據您提供的代碼段來猜測是很困難的。給我一個完整的runnable示例演示此問題,我可能能夠提供更多信息。 – JeffryHouser 2010-12-08 14:38:40

回答

0

從你的問題來看,它似乎有一個與設置maxHeight屬性有關的問題。也許嘗試刪除maxHeight="340"並替換爲

resize="{if(container.height > 340) container.height = 340}" 
+0

太棒了!我會嘗試的!謝謝! – 2010-12-16 20:50:29

0

或者,將VBox放在另一個容器中。將VBox高度設置爲100%,並在外部容器上調整大小。我解決了使用這種類型的佈局調整大小問題的負載。

+0

嗨!感謝您的回答!一旦我嘗試過,我會盡快回復你^^ – 2010-12-16 20:50:48

0

嘗試設置回NaN讓Flex找出結果。

heightTo="{NaN}"