После того, как флэш запустился, первый ролик из списка List и из файла XML должен проигрываться.
Кнопки перехода почему-то не соответствуют с item. Список List - с ним всё в порядке. Источник ролика и надписи меняются после нажатия на item. Но кнопки перехода сбиваются... =(( то есть неверно работают
Код AS3:
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.events.MouseEvent;
import fl.video.FLVPlayback;
var i:uint;
var counter: uint = 0;
var myxml: XML = new XML();
var videoIndex: Number = myxml.video.length()-1;
//////////////////////////////////
/*
var flvPlayer: FLVPlayback = new FLVPlayback();
flvPlayer.skin = "SkinOverPlaySeekMute.swf";
flvPlayer.autoPlay = false;
flvPlayer.skinAutoHide = true;
addChild(flvPlayer);*/
/////////////////////////////////
var myLoader: URLLoader = new URLLoader();
myLoader.load(new URLRequest("xmls/videos_thems_animale.xml"));
myLoader.addEventListener(Event.COMPLETE, loaded);
function loaded (event: Event)
{
myxml = XML(event.target.data);
VideoPlay();
//===== Список из файла XML в компонент List =====//
for each ( var videos:XML in myxml.*)
{
i++;
list.addItem( { label: i+". " +videos.@title} );
}
var myArray = new Array (0,0);
list.selectedIndices = myArray;
//===== / Список из файла XML в компонент List =====//
//===========List. Обработчик.============//
//Изменение источника (видео и надпись) с помощью итема в листе,
//а кнопки синие для перехода в след/предыд ролик
list.addEventListener(Event.CHANGE, onIndexChangeHandler); // нужно подписать список на событие "после изменения выбора"
//затем в обработчике события подставлять нужные данные
function onIndexChangeHandler(e:Event):void
{
var index:int = e.target.selectedIndex
flvPlayer.source = myxml.video[index].@movie;
flvPlayer.width = myxml.video[index].@width;
flvPlayer.height = myxml.video[index].@height;
flvPlayer.x = 80;
flvPlayer.y = 150;
title.text = myxml.video[index].@title;
}
//а нажатие кнопки должно просто менять индекс
/* btn_left.addEventListener(MouseEvent.CLICK,prevVideoItem);
btn_right.addEventListener(MouseEvent.CLICK,nextVideoItem);
function prevVideoItem(event:MouseEvent):void
{
if(list.selectedIndex>0)
list.selectedIndex -=1;
}
function nextVideoItem(event:MouseEvent):void
{
list.selectedIndex +=1;
}*/
btn_left.addEventListener(MouseEvent.CLICK,prevVideo);
btn_right.addEventListener(MouseEvent.CLICK,nextVideo);
function prevVideo(event:MouseEvent):void
{
if ((list.selectedIndex >0) && (counter > 0))
{
list.selectedIndex = counter -=1;
VideoPlay();
}
else
{
counter = 3;
VideoPlay();
}
}
function nextVideo(event:MouseEvent):void
{
if ((list.selectedIndex < videoIndex) && (counter < videoIndex))
{
list.selectedIndex = counter +=1;
VideoPlay();
}
else
{
list.selectedIndex = counter = 0;
VideoPlay();
}
}
//===========/ List============//
}
function VideoPlay()
{
flvPlayer.source = myxml.video[counter].@movie;
flvPlayer.width = myxml.video[counter].@width;
flvPlayer.height = myxml.video[counter].@height;
flvPlayer.x = 80;
flvPlayer.y = 150;
title.text = myxml.video[counter].@title;
}