【发布时间】:2012-06-06 08:59:41
【问题描述】:
我正在创建一个应用程序。在那有一个弹出窗口,因为我在一个 Scroller 中使用了一个 VGroup。
我在 VGroup 中动态添加我的自定义组件,并在弹出窗口关闭时删除所有组件并将这些组件保存在内存池中。
在第一步中,我通过出现滚动条打开一个包含组件数量的弹出窗口。 然后我关闭弹出窗口。
在第二步中,我打开一个相同的弹出实例,其中包含一些较少的组件,因此不会出现滚动条并关闭弹出窗口。
现在,当我再次打开带有更多组件的弹出窗口时,不会出现滚动条。 所以每当弹出窗口用较少的组件打开时,滚动条就会消失。
请帮帮我...
这是完整的代码:
<s:Scroller id="myScroller"
width="100%"
height="210"
horizontalScrollPolicy="off">
<s:VGroup id="myContainer"
width="100%"
height="210" />
</s:Scroller>
添加组件的代码:
for each(var object:MyObject in _arr)
{
var newView:MyCustomView = MyCustomViewPool.acquire();
myContainer.addElementAt(newView, 0);
newView.myData = object;
}
这里是移除组件的代码:
for(var i:int = 0; i < myContainer.numElements; i++)
{
var newViewElement:IVisualElement = myContainer.getElementAt(i);
var myViewComponent:MyCustomView = newViewElement as MyCustomView;
MyCustomViewPool.release(myViewComponent);
}
myContainer.removeAllElements();
【问题讨论】:
标签: actionscript-3 apache-flex flex4 flex4.5 scroller