简体   繁体   中英

Flex spark list to render images

I am new in flex. Currently i am going to build a flex album, but I get a problem about the render in image by spark list.

the problem is this last 2~3 thumbs can not be properly displayed, as you can see as follows:

http://www.j-rich.com/Problem

and it will look like: http://www.j-rich.com/Problem/show.jpg

for the source code, you can right click and choose view source in the demo

Any suggestion will be appreciated, thank you very much.

Sincerely, Yuan-Hsu Liao

Add cachePolicy="on" to your Image control in ItemRenderer . But I don't recomend to use this kind of huge images as thumbnails. Looks like Flash has some limitations in this field.

This is correct for me, my resolution is 1920*1080. I use FLEX SDK4.5.1, flashplayer 11.8. By the way, you should better override the set data function in the ItemRenderer, and set img source in the function, like this:

<?xml version="1.0" encoding="utf-8"?>
<s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009" 
                xmlns:s="library://ns.adobe.com/flex/spark">
    <s:layout>
        <s:VerticalLayout/>
    </s:layout>

    <fx:Script>
        <![CDATA[
            import mx.controls.Alert;
            import mx.events.FlexEvent;

            override public function set data(value:Object):void {
                super.data = value;
                var url:String = value as String;
                img.source = url;
                positionImg(); 
            }


            private function positionImg():void
            {
                this.ima.width = 136;
                this.ima.height = 105;
                this.ima.x = 0;
                this.ima.y = 0;
            }
        ]]>
    </fx:Script>

    <s:Group id="group" x="0" y="0" width="170" height="85">
        <s:Image id="img" x="0" y="0" scaleMode="letterbox"/>
    </s:Group>
</s:ItemRenderer>

ItemRenderer is recycled, so it's better to do some stuff in the set data()

检查给定的填充是否正确...或调整相同。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM