在Flash Builder 4.6中动态更改图像



在我的代码中,我定义了以下内容:<s:Image id="test" x="50" y="50" width="30" height="30" click="onClick_clickHandler(event)" smooth="true" smoothingQuality="high" source="@Embed('icons/myImage_60_off.png')"/>我想要的是能够在用户每次点击图像时更改图像的来源——类似于收藏夹在浏览器上的工作方式。我不知道如何从我的代码中更改图像的来源。

感谢

我的解决方案中有一个隐藏的数据网格,因为它从一个可见的网格开始。

图像如下:

 <mx:Image top="153" left="10" right="10" bottom="5" source="{dgpick.selectedItem.ImageFile}" />

每次有人点击图像时,我都会增加数据网格的选定索引,标签会显示相应的数据,因为它们也与数据绑定。

图像还可以有一个指向XML文件的链接,您可以像这样加载:

<s:HTTPService id="Config"
                   url="config.xml"
                   result="resultHandler(event)"/>
private function resultHandler(event:ResultEvent):void 
{
    ImagesURL = event.result.images.ImagesURL[iCounter];                
}

每次有人点击图片,你都可以增加计数器,以此类推。

希望这能给你一些想法。

有20种方法可以做到这一点。

如果你需要更多的代码,添加一个注释,说明你需要什么。


我终于做到了

public var image_loader:Loader;//定义新加载程序

image_loader = new Loader();//在所需位置创建新的加载程序(在我的情况下是页面的初始化方法

image_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);//添加侦听器和要分配给侦听器的函数
取决于必须执行命令的位置

image_loader.load(new URLRequest('location of the image'));//这将动态加载图像

function imageLoaded(event:Event):void {image_Id.source = image_loader;}//其中image_Id是要修改的s:image标签的Id

此外,我不得不从以前发布的s:Image标签中删除源
剩下的只是应用程序实现功能所需方式的逻辑,因此这在很大程度上取决于开发人员的愿望

最新更新