flex 图片显示
发布网友
发布时间:2022-04-25 04:16
我来回答
共1个回答
热心网友
时间:2023-10-25 09:09
1、你需要知道你的项目需要使用什么方式的图片,是嵌入资源,还是通过外置文件,前者@Embed(source='red.png'),后者使用Image组件,使用source属性。基本数组都可以的,数组的每一个成员,定义为一个数据对象包括(图片的URL,图片的描述信息(...))如:
class CImgInfo
{
[Bindable]
public img_url:String;
[Bindable]
public img_mame:String;
[Bindable]
public img_desc:String;
...
}
var imgListArray:ArrayCollection;
for( var i:unit = 0; i < length; i++)
{
var obj:CImgInfo = new CImgInfo();
obj.img_url = "";
...
imgListArray.addItem(obj);
}
2、利用list或者其扩展出的类(基本上可以重新定义ItemRenderer的类表组件都可以)
加入使用list,重新定义list的ItemRenderer,如一个Image组件和若干个Label组件,Image用来显示图片,label显示相应信息。
如在ItemRenderer里可以如下设置
<mx:Image id="id_img" srouce="{data.img_url}" left="0" top="0" right="0" bottom="0" />
<!-- 这里也可以定义在图片上通过tips显示图片的相关信息-->
<s:Label id="id_img_name" text="{data.img_name}" left="0" top="0" right="0" bottom="0" />
...
3、你所说的注意,无非是希望图片和其对应的信息像一条数据一样处理,所以这里写一个数据类,这样你的图片和它相关的描述信息就被绑定到一起了!
不知道你的开发环境,以上基于FB4的开发经验,希望对你有所帮助!追问第一种方法是我需要的,开发环境也是FB4,
现在刚如何显示呢?
我现在已经有图片数组集合了,想在容器内显示,
一般集合都是通过dataProvider绑定的
我现在需要遍历这个图片数组数组吗?
怎么显示呢?
追答要不要遍历数组,就要看你数组的数据结构是否能够满足呈显器的需要。我在第一部分已经给你介绍如何让你的数组,变成符合呈显器中对应组件的数据源。
遍历的目的主要是构建一个符合ItemRender数据源的结构。显示的部分已经在第二部分描述了!