![]() |
|
||||||||||
|
|||||
|
Регистрация: Sep 2009
Сообщений: 15
|
Столкнулся с такой проблемой. Создал список, у которого кастомный itemRenderer.
Все бы ничего, но в этом itemRenderer рисуется определенным цветом квадратик, обозначающий статус продукта. Так вот, при скроллинге почему-то далеко не все эти квадратики перерисовываются. То есть когда элемент списка становится видимым, то у некоторых этот квадратик рисуется, у других же нет, только если кликнешь по этому элементу. Все уже излазил, какие только валидейты не пробовал, на какие только события не навешивался - все без толку. Код этого квадратика предельно простой, сам itemRenderer(код не привожу) - просто набор текстовых полей и этого квадратика package com.cc.components { import flash.events.Event; import mx.core.UIComponent; public class LightboxStatusItem extends UIComponent { private var _color:uint=0xFF0000; private var _itemAlpha:Number=1; public function LightboxStatusItem() { super(); width=18; height=18; //addEventListener(Event.ENTER_FRAME, validate); } private function validate(event:Event):void{ invalidateDisplayList(); } public function set color(value:uint):void{ if(value !=_color){ _color=value; invalidateDisplayList(); } } public function get color():uint{ return _color; } public function set itemAlpha(value:Number):void{ if(value !=_itemAlpha){ _itemAlpha=value; invalidateDisplayList(); } } public function get itemAlpha():Number{ return _itemAlpha; } override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void{ super.updateDisplayList(unscaledWidth, unscaledHeight); drawRoundRect(0, 0, unscaledWidth, unscaledHeight, 2, color, itemAlpha); } } } Я, конечно, могу навешать EnterFrame(сейчас закомментировал эту строчку) и все работает. Но вешать штук 30 ентерфреймов очень не хочется что-то. Может кто-нибудь сталкивался с такой проблемой, когда отдельные элементы не прорисовываются при скроллинге? Последний раз редактировалось sergeik81; 25.02.2010 в 18:46. |
![]() |
Часовой пояс GMT +4, время: 22:19. |
|
|
« Предыдущая тема | Следующая тема » |
|
|