2009-12-16 12 views
5

W wersji 3, z komponentem List, można dodać efekt do właściwości itemChangeEffect, umożliwiając animowanie dodawania/usuwania elementów w elemencie listy.Co to jest itemChangeEffect w Spark List?

Equiv na liście iskry jest zdarzeniem rendererAdd i Removed, ale to nie pozwala na pełną kontrolę nad efektem, ponieważ usuwanie odbywa się zaraz po wysłaniu zdarzenia, co pozwala na uniknięcie efektu .

Czy ktoś wie, jak osiągnąć to samo na liście iskier?

Odpowiedz

2

Sprawdź tę odpowiedź w przepełnieniu stosu: Animating Child Elements in Flex 4.

W listach programu Flex 3 zapakowano itemChangeEffect/dataChangeEffect i musieli wykonać wiele niestandardowych ustawień wewnątrz składnika List, aby było to możliwe. Ponieważ Spark jest dużo nowszy i dużo lepiej zaprojektowany, nie zawierał żadnego przetwarzania efektów w komponentach, więc nie można robić rzeczy takich jak itemChangeEffects.

Możesz jednak zrobić efekty w swoich układach. Jeśli chcesz utworzyć AnimatedVerticalLayout, wszystko, co musisz zrobić, to rozszerzyć ich VerticalLayout i przesłonić updateDisplayList, a następnie użyć TweenMax do animowania elementów do i ze stanu. To nie jest łatwe:/ale to jedyna rzecz, którą możesz naprawdę teraz zrobić. Jednak gdy ktoś zautomatyzuje ten proces, będzie to bardzo proste.

Powodzenia!

Zobacz ten przykład: Animated TimeMachine Layout przez Gilles Guillemin. Ma dobre rzeczy.