У меня есть компонент, который я создал, который работает как Viewstack, но следующий компонент индекса скользит с одной из четырех сторон.У меня это работает достаточно хорошо, чтобы его можно было использовать, но я хочу сделать его более эффективным.
Сейчас я использую Canvas в качестве базового компонента, я создаю снимок текущего представленияиспользуя ImageSnapshot (new Bitmap( ImageSnapshot.captureBitmapData( this ) )
), и я перемещаю новый индекс поверх этого изображения при изменении индекса.
Я в основном ищу предложения о том, как сделать это лучше.Взяв изображение после загрузки компонента и после того, как произошел слайд, я получил минимальное начальное смещение, но мы обычно используем его для перемещения сеток, поэтому оно почти всегда медленное на первом или первом паре слайдов.
Вот как это выглядит до сих пор:
private function creationComplete(e:Event):void
{
tmpImage.source = new Bitmap( ImageSnapshot.captureBitmapData( this ) );
}
public function set selectedIndex(value:int):void
{
if(_selectedIndex == value + 1)
return;
_selectedIndex = value+1;
var obj:UIComponent;
tmpImage.height = height;
tmpImage.width = width;
tmpImage.visible = true;
tmpImage.x = 0;
//tmpImage.includeInLayout = true;
for (var i:int = 1; i < numChildren; i++)
{
obj = UIComponent(getChildAt(i));
//obj.x = width;
if(i == _selectedIndex){
obj.visible = true;
objDisplay = obj;
}
else
obj.visible = false;
}
mv1.target = tmpImage;
mv2.target = objDisplay;
switch ( direction )
{
// X/Y sliding logic
}
parEfect.play();
tmpImage.source = new Bitmap( ImageSnapshot.captureBitmapData( this ) );
}
Если вам интересно, я использую индекс 0 холста для изображения и смещаю свой пользовательский selectedIndex на 1.
Я опубликую больше, если нужно, но я хочу свести вопрос к минимуму, и это в значительной степени подводит итог.
Любая помощь очень ценится!Я действительно хочу, чтобы этот компонент работал лучше.Кроме того, это должно быть сделано с помощью Flex 3