![]() |
|
||||||||||
|
|||||
|
Регистрация: Dec 2010
Сообщений: 121
|
Это плохо, что не так. Хочется, чтобы так. Столько времени на него потратил...
__________________
Учить Flash начал, когда мне стукнуло 50. И не жалею! |
|
|||||
|
по сути, вы просите сделать все за вас
__________________
while(live()) { hope(); } |
|
|||||
|
Регистрация: Oct 2006
Сообщений: 2,282
|
Цитата:
import flash.net.URLLoader; import flash.net.URLRequest; import flash.events.*; import flash.display.Loader; var xmlLoader:URLLoader = new URLLoader(new URLRequest("xml/my.xml")); var xmlData:XML; var xmlList:XMLList; var picLoader:Loader; var curImage:int=0; var images:Array=[]; xmlLoader.addEventListener(Event.COMPLETE, getXML); next_btn.addEventListener(MouseEvent.CLICK,onClick); prev_btn.addEventListener(MouseEvent.CLICK,onClick); function getXML(e:Event):void { trace("загрузился"); xmlData = XML(e.target.data); var list:XMLList=xmlData.pages; for (var i:uint=0;i<list.children().length();i++) { var picLoader:Loader = new Loader(); picLoader.load(new URLRequest(list.children()[i])); picLoader.x = 0; picLoader.y = 0; addChild(picLoader); picLoader.visible=(i==curImage); images.push(picLoader); } } function onClick(e:MouseEvent):void { if (e.target==next_btn) { images[curImage].visible=false; curImage++; if(curImage>images.length-1) curImage=0; images[curImage].visible=true; } else if (e.target==prev_btn) { images[curImage].visible=false; curImage--; if(curImage<0) curImage=images.length-1; images[curImage].visible=true; } } |
|
|||||
|
Регистрация: Dec 2010
Сообщений: 121
|
Да я понимаю, что это не этично. но я, честное слово, был уверен, что всё правильно написал. Думал, без массивов обойдусь. Никак они мне не даются...
__________________
Учить Flash начал, когда мне стукнуло 50. И не жалею! |
|
|||||
|
нужно
1. загрузить картинки в массив 2. добавить две кнопки на сцену (влево -вправо) 3. завести int переменную, которая будет отвечать за показывающийся сейчас слайд. 4. при нажатии на кнопку изменять переменную (+1 либо -1 - в зависимости от направления) и показывать элемент массива, соответствующий переменной. Единственное, что нужно будет учесть - возвращать переменную в 0, если она становится больше длины массива и делать равно длине массива-1, если она становится больше или равно его длине
__________________
while(live()) { hope(); } |
|
|||||
|
Регистрация: Dec 2010
Сообщений: 121
|
Цитата:
__________________
Учить Flash начал, когда мне стукнуло 50. И не жалею! |
|
|||||
|
Регистрация: Dec 2014
Адрес: Санкт-Петербург
Сообщений: 483
|
В последней фразе ты хотел сказать, "если она становится меньше нуля", я полагаю.
|
|
|||||
|
Регистрация: Oct 2006
Сообщений: 2,282
|
Цитата:
либо так получать элемент из массива можно так: |
|
|||||
|
Регистрация: Dec 2010
Сообщений: 121
|
Правда, флешка всё равно не работает. Добавил кнопки, дал им имена, но загрузилась только первая картинка, и всё. Но, не смею вас больше беспокоить. Потому что в итоге получится, что вы всё сделаете за меня...
__________________
Учить Flash начал, когда мне стукнуло 50. И не жалею! |
|
|||||
|
Comer
для того, чтобы понять, что такое массив - идете в гугл и набираете "Array as3" и проходите по первой ссылке. Лучше, конечно, почитать какую-нибудь книгу на вроде "Алгоритмы и структуры данных" - помогает. И, кстати, очень даже интересно. чтобы работало, попробуйте переделать немного метод onClick из примера undefined function onClick(event:MouseEvent):void { var target:MovieClip = event.target as MovieClip; trace('target = '+target); for(var i:int=0; i<images.length; i++) { images[curImage].visible=false; } if (target==next_btn as MovieClip) { curImage++; if(curImage>(images.length-1)) curImage=0; } else if (target==prev_btn as MovieClip) { curImage--; if(curImage<0) curImage=images.length-1; } images[curImage].visible=true; }
__________________
while(live()) { hope(); } |
![]() |
![]() |
Часовой пояс GMT +4, время: 07:14. |
|
|
« Предыдущая тема | Следующая тема » |
|
|