我正在创建一个应用程序。在那里有一个弹出窗口,因为我在一个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();
答案 0 :(得分:0)
我认为你不必在VGroup上设置高度。只需删除作业。