Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 As3加载空白图像_Actionscript 3_Flash - Fatal编程技术网

Actionscript 3 As3加载空白图像

Actionscript 3 As3加载空白图像,actionscript-3,flash,Actionscript 3,Flash,我从外部源加载图像时遇到问题(这是可行的,但我们将服务器更改为https并进行了一些调整)。 现在,当我加载图像时,没有错误,但是宽度和高度都是0。图像也是空白的。 我试着用这个脚本加载一些随机的互联网图像,效果很好。然而,对于原版-()-它不起作用 var somethingLoaded:Boolean = true; var actualPic:*; var pictLdrX:Loader = new Loader(); var pictURLX:String = 'https://www.

我从外部源加载图像时遇到问题(这是可行的,但我们将服务器更改为https并进行了一些调整)。 现在,当我加载图像时,没有错误,但是宽度和高度都是0。图像也是空白的。 我试着用这个脚本加载一些随机的互联网图像,效果很好。然而,对于原版-()-它不起作用

var somethingLoaded:Boolean = true;
var actualPic:*;
var pictLdrX:Loader = new Loader();
var pictURLX:String = 'https://www.lovemarks.co/images/be50fe37eac192fb7c0d17353f5ef993a.jpg';
var pictURLReqX:URLRequest = new URLRequest(pictURLX);
var loaderContext:LoaderContext = new LoaderContext();
pictLdrX.load(pictURLReqX);
pictLdrX.contentLoaderInfo.addEventListener(Event.INIT , loadedRemember)                    

function loadedRemember(event:Event){
    var targetLoader:Loader = Loader(event.target.loader);
    var newmc:MovieClip = new MovieClip();
    addChild(newmc);
    newmc.addChild(targetLoader.content);
    newmc.x = -targetLoader.width/2;
    newmc.y = -targetLoader.height/2;
    trace ('w+'+targetLoader.width);     
    trace ('h+'+targetLoader.height);
    trace ('x+'+newmc.x);
    trace ('y+'+newmc.y);   
}

方法是首先侦听
Event.COMPLETE
而不是
Event.INIT

pictLdrX.contentLoaderInfo.addEventListener(Event.COMPLETE , loadedRemember);
然后,不要引用处理程序中的实际加载程序,只需通过首先将
事件.target.content
转换为
位图来直接引用图像即可:

function loadedRemember(event:Event)
{
    trace("loadedRemember()");

    var newmc:Bitmap = Bitmap(event.target.content);
    addChild(newmc);
    // Your math to center may need to be adjusted
    // to account for such a big image size
    newmc.x = -newmc.width/2;
    newmc.y = -newmc.height/2;

    trace ('w+'+newmc.width + '\nh+'+newmc.height + '\nx+'+newmc.x + '\ny+'+newmc.y);   
}

另外,在输出窗口中检查与跨域相关的任何安全错误。

是否都在同一个域上提供服务?(和相同的协议?)flash有跨源限制。您必须上载XML文件以允许访问。除此之外,请尝试使用flash player的开发人员版本检查错误。尝试侦听加载某些内容时可能被调度的无数事件。下面给出了一个这样做的示例。