feathersui / feathersui-starling

User interface components for Starling Framework and Adobe AIR
https://feathersui.com/learn/as3-starling/
Other
915 stars 386 forks source link

layoutOrder doesn't work #1736

Closed subdan closed 6 years ago

subdan commented 6 years ago

I use a List to display a list of images with remove button.

screenshot_1

I want to place remove button on the right side. I use this code: itemRenderer.layoutOrder = ItemRendererLayoutOrder.LABEL_ACCESSORY_ICON; It doesn't work. Why?

list = new List();
list.itemRendererFactory = function ():IListItemRenderer
{
    var ir:DefaultListItemRenderer = new DefaultListItemRenderer();
    ir.maxHeight = 200;
    ir.accessorySourceField = "image";
    ir.isToggle = false;
    ir.hasLabelTextRenderer = false;
    ir.accessoryLoaderFactory = function ():ImageLoader
    {
        var loader:ImageLoader = new ImageLoader();
        loader.maxWidth = 200;
        loader.scaleMode = ScaleMode.SHOW_ALL;
        return loader;
    };
    ir.layoutOrder = ItemRendererLayoutOrder.LABEL_ICON_ACCESSORY;
    ir.iconFunction = function( item:Object, index:int ):DisplayObject
    {
        var button:Button = new Button();
        button.styleName = Button.ALTERNATE_STYLE_NAME_DANGER_BUTTON;
        button.label = "X";
        return button;
    };
    return ir;
};
list.backgroundSkin = new Quad(10, 10, 0x000000);
hGroup.addChild(list);
subdan commented 6 years ago

I've set

ir.accessoryPosition = RelativePosition.LEFT;
ir.iconPosition = RelativePosition.RIGHT;

and it works. You can close the issue.