图像不会动态刷新

时间:2010-04-23 18:05:38

标签: flex actionscript-3 image httpservice

我正在编写一个Flex应用程序来从httpservice接收xml。这是有效的,因为我可以使用信息填充数据网格。 xml发送图像路径名。组合框发送一个新的HttpService调用onChange。这会重新填充datagrid并将新图像放入flex正在访问的文件夹中。

我想动态更改图像而不更改图像的路径名。

<mx:Canvas id="borderCanvas"><mx:Canvas id="dropCanvas">
  <mx:Tile id="adTile"><mx:Image></mx:Image>
  </mx:Tile></mx:Canvas></mx:Canvas>

这是我的组件。 我使用以下代码分配我的图像源:

var i:Number = 0;
      while ( i <= dg_conads.rowCount){
        var img:Image = new Image();
        img.source = null;
        img.source = imageSource+i+".jpg";
        adTile.addChild(img);
        i++; }

我最大的问题是图像不清爽。即使我阻止了HTML包装器和ASP.Net网站的缓存,我也得到了相同的图像。图像会自动加载到文件夹中并在文件夹中刷新,但我无法在应用程序中刷新图像。 我试过removeAllChildren();删除(adTile.getChildAt(0));并没有奏效。

2 个答案:

答案 0 :(得分:0)

我会尝试使用:

img.load(imageSource + i + ".jpg");

如果这不起作用,请尝试在末尾附加一个随机数,即:

img.source = imageSource + i + ".jpg?" + Math.random();

答案 1 :(得分:0)

您是否曾尝试将id =“img”直接添加到mx:Image标记中并删除adTile.addChild(img); 在剧本中?