AS3 - Flash Vars Как получить ключевое имя?

Я просматривал некоторые документы Adobe, http://blogs.adobe.com/pdehaan/2006/07/using_flashvars_with_actionscr.html, но это просто неправильно. Когда я делаю для каждого над this.root.loaderInfo.parameters, я могу только распечатать значения. Я хочу реальные имена флэш-переменных, а не значения. Как я могу это сделать?

var paramObj:Object = this.root.loaderInfo.parameters
            for each (var param:String in paramObj)
            {
                trace("key?: " + param);


                //var valueStr:String = String(paramObj[param]);
                //trace("param" + param + " name: " + valueStr);
            }

Код выше распечатывает значения.

2 ответа

это просто неправильно.

Я не уверен, о чем вы говорите, вот код из ссылки, которую вы предоставили:

// AS3
var tf:TextField = new TextField();
tf.autoSize = TextFieldAutoSize.LEFT;
tf.border = true;
addChild(tf);

tf.appendText("params:" + "\n");
try {
var keyStr:String;
var valueStr:String;
var paramObj:Object = LoaderInfo(this.root.loaderInfo).parameters;
for (keyStr in paramObj) {
valueStr = String(paramObj[keyStr]);
tf.appendText("\t" + keyStr + ":\t" + valueStr + "\n");
}
} catch (error:Error) {
tf.appendText(error.toString());
}

Когда я делаю для каждого над this.root.loaderInfo.parameters, я могу только распечатать значения.

Вполне вероятно, что это одна из причин, почему код примера не использует for each in петля но for in цикл вместо


Если вы работаете с примером кода, старайтесь придерживаться его как можно ближе. Если вы изменили код, и он больше не работает, не вините оригинальный код.

Это похоже на то, что я использую, чтобы отследить мои flashVars.

for (var param:String in paramObj)
{
    trace(param + " : " + paramObj[param]);
}
Другие вопросы по тегам