Список искр, повторно использующий неправильные средства визуализации элементов - PullRequest
1 голос
/ 09 февраля 2010

У меня есть компонент List, использующий несколько средств визуализации элементов, определенных itemRendererFunction. Когда я устанавливаю данные в первый раз, они работают как положено. Затем, когда я устанавливаю данные во второй раз новыми данными, он не вызывает itemRendererFunction и пытается повторно использовать текущие средства визуализации, даже если они не соответствуют данным. После прокрутки вызывается функция и используются правильные средства визуализации. Я пытался вызвать invalidateDisplayList и тому подобное до установки данных, но это не решило проблему. Есть идеи?

Ответы [ 3 ]

4 голосов
/ 09 февраля 2010

Оказывается, это ошибка Flex SDK. Питер ДеХан предоставил мне обходной путь (переустанавливая свойство itemRendererFunction после установки dataProvider) и подает его для будущего выпуска SDK.

0 голосов
/ 07 февраля 2012

FWIW: вот ссылка на ошибку Flex: https://bugs.adobe.com/jira/browse/SDK-32018

0 голосов
/ 09 февраля 2010

Вот только некоторые идеи:

Попробуйте invalidateProperties? Глядя на источник, я догадываюсь, что в противном случае, возможно, просто начните вызывать каждый недействительный метод, который вы можете найти, пока не получите правильный.

Другим хакерским решением может быть взять не текущую позицию прокрутки (через скроллер в Списке), передать новый массив в качестве провайдера данных (который определенно будет воссоздавать средства визуализации элементов), а затем установить позицию прокрутки на то же самое было до обновления.

Или вы можете абстрагировать выбор другого средства визуализации элементов в само средство визуализации элементов. : /

...