Я создаю одно приложение. В том, что есть одно всплывающее окно, в котором я использовал одну VGroup в одном скроллере.Скроллер не показан Flex 4 с VGroup
Я динамически добавляю свои пользовательские компоненты в VGroup и удаляю все компоненты при закрытии всплывающего окна и сохраняет эти компоненты в пуле памяти.
На первом этапе я открываю всплывающее окно с числами компонентов с помощью этой полосы прокрутки. Затем я закрываю всплывающее окно.
На втором этапе я открываю один и тот же всплывающий экземпляр с меньшим количеством компонентов, поэтому полоса прокрутки не появляется и закрывает всплывающее окно.
И теперь, когда я открываю всплывающее окно с большим количеством компонентов, снова не отображается прокрутка. Поэтому, когда всплывающее окно открывается с меньшим количеством компонентов, полоса прокрутки исчезает.
Pls помочь мне ...
Вот полный код:
<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();
Это верно: поскольку Scroller и VGroup имеют ровно 210 пикселей, VGroup не больше, чем Scroller, следовательно, нет полос прокрутки. – RIAstar
Я удалил высоту VGroup, но это не сработало ... –
А также с той высотой VGroup она работает нормально, когда в первый раз при создании всплывающего окна ... –