Сбой HorizontalList при быстрой прокрутке - PullRequest
0 голосов
/ 29 апреля 2011

У меня есть эта странная проблема во Flex (Flash Builder 4), в HorizontalList она вылетает всякий раз, когда я перехожу к быстрой, у кого-нибудь есть идея? вот мой пользовательский рендерер элементов

package
{
    import flash.events.Event;
    import flash.events.MouseEvent;
    import flash.net.URLLoader;
    import flash.net.URLRequest;
    import flash.text.StyleSheet;
    import flashx.textLayout.container.ScrollPolicy;
    import mx.containers.VBox;
    import mx.controls.Image;
    import mx.controls.Label;
    import mx.core.FlexGlobals;

    public class CustomItemRenderVBox extends VBox
    {
        private var track:Object = null;
        private var img:Image = new Image();
        private var lbl:Label = new Label();
        [Embed(source="gfx/noArt.png")]
        [Bindable]
        private var noArt:Class;


        override public function set data(value:Object):void
        {
            trace(value);
        if(value.c3 != "" )
        try{
            addChild(img);
            addChild(lbl);

            horizontalScrollPolicy = ScrollPolicy.OFF;
            verticalScrollPolicy = ScrollPolicy.OFF;
            setStyle("verticalAlign", "top");
            setStyle("horizontalAlign","left");
            track = value;
            trace("Art: " + value.Art); 

            if(value.Art == "" || value.Art =="-" )
            img.source = noArt; else    
            img.source = value.Art;  // << when I remove this part it works fine
            trace("GAY");   
            img.height = 60;
            img.scaleContent = true;
            img.autoLoad = true;

            lbl.text = value.c3;
            lbl.width = 67;
            lbl.height = 20;
            trace("WAY");
            img.useHandCursor = true;
            img.buttonMode = true;

            lbl.useHandCursor = true;
            lbl.buttonMode = true;
            trace("NAY");
            img.addEventListener(MouseEvent.CLICK,arClick);
            lbl.addEventListener(MouseEvent.CLICK,arClick);


        }catch(E:Error)
        {
        }
        }


        private function arClick(event:MouseEvent):void
        {
            FlexGlobals.topLevelApplication.albumSearch("/album " + track.c3);
        }
    }
}

1 Ответ

1 голос
/ 22 сентября 2011

У меня такая же проблема.В Google Chrome мы видим: инструкция на «0x00000000» ссылается на память на «0x00000000»Память не может быть «написана».Решение: я попытался установить cachePolicy = "on" на моем экземпляре скроллера.Вы должны установить это в свой компонент списка (или в часть скина скроллера)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...