![]() |
Баг в spark List
Вложений: 1
Добрый день, столкнулся с таким неприятным багом в flex spark компаненте List: реализовал постраничное листание элементов с помощью этого контрола, и когда свойству dataProvider присваиваешь новую коллекцию элементов в нем все элементы инвертируются, но дополнительного события dataChange в каждом ItemRenderer не происходит. Это заметно, т.к. нужно было реализовать анимацию переворачивания карты когда в ItemReтвукук происходит dataChange. Кто-нибудь сталкивался? Или может посоверуете другой контрол для постраничного вывода? Как быть?
В приложении флешка с примером бага постраничного листания, если непонятно написал. |
"Я тут что-то сделал и оно как-то не так работает".
Ну почему все надо клещами вытаскивать? Вам помощь нужна или сочувствие? Добавлено через 5 минут P.S. Для этого не обязательно менять dataProvider. |
Цитата:
Цитата:
1. Есть List 2. для него есть ItemRenderer, в нем на событии dataChange стартует ScaleEffect от 0 до 1, потом обновляются иконки и тексты для новых данных, и запускается ScaleEffect от 0 до 1, получается эффект переворачивания карты 3. в контроллере при нажатии на кнопки влево/вправо в свойство dataProvider кладу новый ArrayList. вот вроде бы все, все стандартно этот баг особенно хорошо заметен при перелистывании первой страницы на вторую, там есть элемент с синей лентой, он стоит на 4 месте в первом ряду, а после нажатия на кнопку ">" он становится вторым во втором ряду, а если поменять у List layout c TileLayout на HorisontalLayout, то элементы будут выстраиваться в ряд, и этот синий элемент будет стоять так же на 4 месте, а при нажатии на кнопку ">" на 7, т.е. на 4 ом месте с конца, и если приглядеться то можно заметить что остальные элементы так же, инвертируются относительно центра. Хочу еще раз отметить что никакого дополнитильного события dataChange в ItemRenderer не происходит, т.е. это мой код который только и должен менять внешний вид у ItemRenderer отрабатывает только один раз, тогда когда надо, в момент когда ScaleEffect который сворачивает карту выполнен, и ScaleEffect который разворачивает карту еще не начался, т.е. когда scale у элемента = 0 вот выложу исходники на всякий случай ItemRenderer: Код:
<?xml version="1.0" encoding="utf-8"?>PHP код:
achievementsPaginator.current() возвращает Array Код AS3:
|
Цитата:
Вот то, что EffectManager не поддерживает DataGroup для addedEffect и removedEffect эффектов это баг, хоть Adobe и пытаются отмазываться. Добавлено через 8 минут Цитата:
|
Цитата:
Цитата:
спасибо за объяснение, а можете посоветовать другой контрол на флексе на котором пейджинг с анимацией можно сделать? |
Обычный Group, вы все равно функционал List не используете.
|
| Часовой пояс GMT +4, время: 17:45. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.