标签: loaderinfo

AS3:如何在事件侦听器函数中从LoaderInfo获取动态加载程序URL?

我正在加载许多图片,并且正在使用数组来执行此操作.

loader[i].load(new URLRequest(picture[i]));
Run Code Online (Sandbox Code Playgroud)

我的事件监听器功能启用如下:

loader[i].contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);   
Run Code Online (Sandbox Code Playgroud)

我的onComplete事件处理程序显示了这个:

trace(e.target); //OUTPUT: [object LoaderInfo]
Run Code Online (Sandbox Code Playgroud)

我在LoaderInfo中查找了可能识别哪个加载器启动了监听器("i"的值)的属性,这样我就可以专门用于每个加载器,如下所示:

bitmapDataArr[i] = e.target.content.bitmapData;
bmVisArr[i] = new Bitmap(bitmapDataArr[i]);
Run Code Online (Sandbox Code Playgroud)

但无法确定哪个"i"启动了侦听器的特定实例.

有任何想法吗?我试着给LoaderInfo一个名字无济于事.我仍然无法提取讨厌的小识别号码.

EDIT显示加载器和onComplete函数的循环:

for (i = 0; i < 10; i++) {
    loader[i] = new Loader();
    loader[i].contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete, false, 0, true);           
    loader[i].load(new URLRequest(letter[i]));
}

private function onComplete(e:Event):void {
    trace("e.target",e.target); //OUTPUT: e.target    [object LoaderInfo]
    var LI:LoaderInfo = e.target as LoaderInfo;
    var eNum:int = (????);
    bitmapDataArr[eNum] = e.target.content.bitmapData;
    bmVisArr[eNum] = new Bitmap(bitmapDataArr[eNum]);
}
Run Code Online (Sandbox Code Playgroud)

javascript arrays loader actionscript-3 loaderinfo

10
推荐指数
1
解决办法
392
查看次数

如何获取嵌入Flash影片的URL?

今天我正在尝试获取我的Flash电影所在的URL.

我在这里找到了一个类似的问题,回答了Flash的LoaderInfo方法的链接,但我不确定我是否在我的测试影片中正确使用它作为textField:http://leongaban.com/stackoverflow/getUrl /不显示URL

更新!工作代码

我只需要这个:stage.loaderInfo.url:)

package {

import flash.display.Stage;
import flash.display.DisplayObject;
import flash.display.Sprite;
import flash.display.Loader;
import flash.display.LoaderInfo;
import flash.events.Event;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import FontsTest;

public class LoaderInfoExample extends Sprite 
{
    private var myTextField :TextField = new TextField();
    private var urlIs:String = "";

    public function LoaderInfoExample() {

        urlIs = stage.loaderInfo.url;
        trace(stage.loaderInfo.url);
        addEventListener(Event.ADDED_TO_STAGE, initHandler);
    }

    private function initHandler(event:Event):void {

        myTextField.defaultTextFormat = FontsTest.Arial14Bold;
        myTextField.border = true;
        myTextField.antiAliasType = …
Run Code Online (Sandbox Code Playgroud)

flash url actionscript-3 loaderinfo

2
推荐指数
1
解决办法
4909
查看次数

获取swf布尔参数

我有一个swf,我称之为

/SWFUploader/upload.swf?single=true

然后在ActionScript 3中我读入了值.但它不起作用.这是我的测试代码(第一个块来自http://blogs.adobe.com/pdehaan/2006/07/using_flashvars_with_actionscr.html):

var keyStr:String;
var valueStr:String;
var paramObj:Object = LoaderInfo(this.root.loaderInfo).parameters;
for (keyStr in paramObj) {
    valueStr = String(paramObj[keyStr]);
    trace(keyStr + " = " + valueStr);
}

var isSingle:Boolean = this.loaderInfo.parameters.single as Boolean;
var isSingle1:Boolean = this.loaderInfo.parameters['single'] as Boolean;
var isSingle2:Boolean = LoaderInfo(this.root.loaderInfo).parameters['single'] as Boolean;
var isSingle3:Boolean = LoaderInfo(this.root.loaderInfo).parameters.single as Boolean;
trace(isSingle + ", " + isSingle1 + ", " + isSingle2 + ", " + isSingle3);
Run Code Online (Sandbox Code Playgroud)

令人沮丧的是,这是跟踪的两行:

single = true
false, false, false, false
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

parameters actionscript actionscript-3 loaderinfo

2
推荐指数
1
解决办法
594
查看次数