2013-04-27 4 views
1

Я пытаюсь создать функцию, которая вызывает случайные видео из плейлиста XML в AS3 и не имеет понятия, с чего начать. Я пробовал несколько методов и нарушаю свой мозг. Пожалуйста, остановитесь!xml flv playlist со случайной статистикой AS3

Хотя мне повезло, что вы снимаете видео, рандомизация не работает, и мне также нужно захватить заголовки из xml.

<?xml version="1.0" encoding="UTF-8"?> 
<playlist> 
     <video url="video/flvs/04-02-02-09-01.flv" title="angry" />  
     <video url="video/flvs/14-02-01-08-01.flv" title="happy" />  
     <video url="video/flvs/04-02-01-04-01.flv" title="sad" /> 
     <video url="video/flvs/06-02-02-03-01.flv" title="frustrated" /> 
     <video url="video/flvs/21-02-02-08-01.flv" title="no emotion" /> 
</playlist> 

AS3:

function Init():void{ 
    _urlRequest = new URLRequest("playlist.xml"); 
    _xmlLoader = new URLLoader(); 
    _xmlLoader = new URLLoader(_urlRequest); 
    _xmlLoader.addEventListener(Event.COMPLETE, XMLLoaded, false, 0, true); 
} 

function XMLLoaded($e:Event):void { 
    _xml = new XML($e.target.data); 
    var randomVideo:XML = _xml.video[Math.floor(_xml.video.length() * Math.random())]; 
    PlayVideo(); 
} 
+0

Что имеется ты пытался? Покажите нам какой-то соответствующий код, и мы поможем вам разобраться в решении. Кроме того, 'Math.Random()' ваш друг. – rcdmk

+0

не уверен, где разместить snppet @bwroga. Я полагал. Не работает. 'function Init(): void { _urlRequest = new URLRequest (" playlist.xml "); \t \t _xmlLoader = new URLLoader(); \t _xmlLoader = новый URLLoader (_urlRequest); \t _xmlLoader.addEventListener (Event.COMPLETE, XMLLoaded, false, 0, true); \t } функция XMLLoaded ($ е: Event): недействительным { \t _xml = новый XML ($ e.target.data); \t var randomВидео: XML = _xml.video [Math.floor (_xml.video.length() * Math.random())]; \t PlayVideo(); } ' – spacebeers

+0

Что такое код для' PlayVideo() '? Это должно работать, чтобы получить случайную запись. Ваша проблема теперь должна быть в методе 'PlayVideo()'. – rcdmk

ответ

1

Вы можете получить доступ к случайный узел списка воспроизведения, как это (предполагается, что ваш XML ссылается на переменную под названием "XML"):

var randomVideo:XML = xml.video[Math.floor(xml.video.length() * Math.random())]; 

Вы можете получить доступ к следующие атрибуты:

var randomURL:String = [email protected]; 
var randomTitle:String = [email protected]; 
+0

Закончено с помощью этого, чтобы найти и отсортировать видео по описанию.
'function playRandomVideo() { randomVideo = Math.floor (Math.random() * emotionArray [randomEmotion] .length); randomDescription = Math.floor (Math.random() * emotionArray.length); currentVideo = emotionArray [randomDescription] [randomVideo] [0]; currentDescription = emotionArray [randomDescription] [randomVideo] [1]; addGameVideo(); } '
благодарит за помощь – spacebeers