#flash #actionscript-3 #variables
#flash #actionscript-3 #переменные
Вопрос:
Мне нужно добавить 4 буквы к имени моей переменной при обращении к ней, чтобы получить данные XML на испанском или английском языках. Я пытаюсь повторно использовать свои функции без написания оператора if.
вот так:
//two options for
var spa_my_videos:XMLList;
var eng_my_videos:XMLList;
//APPEND OPTIONS
var spanishLang:String = "spa_";
var englishLang:String = "eng_";
//CALL FUNCTION AND ADD APPEND OPTION
makePlayer (englishLang);
function makePlayer (lang:String):void {
my_player = new FLVPlayback();
my_player.seekBar = SB;
my_player.playPauseButton = PPB;
my_player.volumeBar = VB;
my_player.x = video_x;
my_player.y = video_y;
my_player.width = 1023;
my_player.height = 630;
main_container.addChild (my_player);
//THIS IS WERE DEPENDING ON THE VALUE OF LANG I NEED TO USE THE spa_ or eng_ XML data
my_player.source = root_path lang my_videos[0].@URL;
}
Ответ №1:
Ваш вопрос немного сбивает с толку, но, если я вас правильно понял, вы можете обойти это, используя функцию Object [«variableName»], доступную в AS3. Эта функция позволяет получить доступ к переменной с помощью Object.variable или Object[«переменная»], так что вы можете создать имя переменной в строке и использовать его для ссылки на то, что вы хотите.
Ответ №2:
вне функции makeplayer
var videos:Object = {};
videos[spanishLang] = spa_my_videos[0].@URL;
videos[englishLang] = eng_my_videos[0].@URL;
в функции makeplayer
my_player.source = root_path lang videos[lang][0].@URL;