:
ViewStack的大小是由其子組件的大小決定的,而ViewStack并不會在改變活動子組件的時候自動resize。
只有使用以下方法來控制ViewStack的大小。
1. 使用相同的固定值明確指定所有子組件的大小
2. 使用相同的比例值指定所有子組件的大小
3. 將ViewStack的width和height的值設(shè)置為一個固定或者值。
上述3種方法是Adobe官方文檔提供的。但是這3種方法不能解決ViewStack子組件大小不一致,ViewStack不能自動調(diào)整的問題。
我最后是使用ActionScript動態(tài)解決的。
在更換ViewStack的active child之間,首先設(shè)置viewStack的大小。
<mx:ViewStack id="appStack">
<mx:VBox id="v1"/>
<mx:VBox id="v2"/>
</mx:ViewStack>
public function changeChild() : void {
appStack.width = 200;
appStack.height = 200;
appStack.selectChild = v1;
}
我錯了,使用ViewStack的resizeToContent是最好的解決辦法。