PDA

Просмотр полной версии : Доступ к ItemRenderer при отрисовке SelectionIndicator'а


Хемуль
20.12.2007, 20:34
Есть необходимость создать для элементов списка свой SelectionIndicator и свой ItemRenderer. К примеру, есть у нас такой ItemRenderer, который отрисовывает каждый элемент списка как картинку с текстовой подписью. Этот ItemRenderer описан в MXML-файле MyItemRenderer.mxml. Хочется сделать так, чтобы SelectionIndicator отрисовывался, к примеру, в виде рамочки, окружающей Image, входящий в MyItemRenderer. Я сделал свой класс, наследующий от HorizontalList, перегрузил drawItem таким образом, чтобы SelectionIndicator выводился над контентом элемента списка, сделал свой ItemRenderer и назвал его MyItemRenderer.mxml. Вопрос в том, как теперь в методе drawSelectionIndicator получить размеры этого самого Image?
Исходно метод выглядит так:

protected function drawSelectionIndicator(
indicator:Sprite, x:Number, y:Number,
width:Number, height:Number, color:uint,
itemRenderer:IListItemRenderer):void
{
var g:Graphics = Sprite(indicator).graphics;
g.clear();
g.beginFill(color);
g.drawRect(0, 0, width, height);
g.endFill();

indicator.x = x;
indicator.y = y;
}

Можно ли как-то из itemRenderer-параметра получить ссылку на входящий в него Image? Или есть какой-то более правильный путь реализации такой задачи?

NikR
21.12.2007, 20:43
try:
(itemRenderer as MyItemRenderer).hzchtotam