Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Flash > Автоматическое слайд-шоу


Автор: muad 23.8.2005, 12:24
Такой проблем
есть 300 фотографий, нужно сделать слайд шоу,
строить 300 переходов в ручную не хочется
можно ли это сделать как то на автомате ?

Автор: AlDev 23.8.2005, 12:30
можно.... пиши подгрузку через movieClipLoader + XML.

Автор: muad 23.8.2005, 13:42
Плиз!
чуток подробнее !
я в экшен скрипт не очень силен!
если можно небольшой примерчик скинь ?

Автор: AlDev 23.8.2005, 13:50
пусть у нас есть xml файл:
Код

<?xml version="1.0"?>
<images>
  <image thumbnail_source='img_1_thmbn.jpg' image_source='img_1.jpg' description='some image'/>
  <image thumbnail_source='img_2_thmbn.jpg' image_source='img_2.jpg' description='some image 2'/>
</images>

работа с xml:
нужен класс com.batsuev.utils.XMLUtils ( http://batsuev.com/wp/flash-classes/combatsuevutilsxmlutils/ )
Код

var doc:XML = new XML();
doc.ignoreWhite = true;
doc.onLoad = function()
{
  com.batsuev.utils.XMLUtils.setObjectModel(this);
  var i:Number;
  for (i=0;i<this['images'][0]['image'].length;i++)
  {
    trace (this['images'][0]['image'][i].attributes.thumbnail_source);
    trace (this['images'][0]['image'][i].attributes.image_source);
    trace (this['images'][0]['image'][i].attributes.description);
  }
}
doc.load('images.xml');

то бишь я просто вывод показал здесь в ouput. Далее тебе надо подгружать изображения:
Код

var mcl:MovieClipLoader = new MovieClipLoader();
var mc:MovieClip = this.createEmptyMovieClip('image_mc',this.getNextHighestDepth());
var list:Object = new Object();
list.onLoadInit = function()
{
  trace ('image loaded');
}
mcl.addListener(list);
mcl.loadClip('clip_source',mc);


вот собственно два ключевых момента, от них и отталкивайся.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)