Scroller未向VGroup展示Flex 4

时间:2012-06-06 08:59:42

标签: actionscript-3 flex flex4 flex4.5 scroller

我正在创建一个应用程序。在那里有一个弹出窗口,因为我在一个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();

1 个答案:

答案 0 :(得分:0)

我认为你不必在VGroup上设置高度。只需删除作业。