Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 20.09.2012, 17:07
Yulia_V вне форума Посмотреть профиль Отправить личное сообщение для Yulia_V Найти все сообщения от Yulia_V
  № 1  
Ответить с цитированием
Yulia_V

Регистрация: Sep 2012
Сообщений: 57
Question Создание книги

Здравствуйте, мне нужно создать книгу с текстом, скажем примерно 100 страниц, и надо организовать переключение между ними. У кого-нибудь есть ссылки на уроки или информацию по этой теме?

Старый 20.09.2012, 17:24
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 2  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Если листочки переворачиваются ищите готовый flipBook в гугле. Если без переворота , а просто переключение. То вот схема :
1. Создаем xml
Цитата:
<book>
<list>text for list</list>
...
</book>
2. Создаем стрелочки для переключения назад-вперед
3. По нажатию на стрелочку вперед например увеличиваем итератор и достаем из xml нужный текст
4. Отображаем нужный текст на странице. ( кстати можно делать еще и подсветку через htmlText )
__________________
Марк Tween

Старый 20.09.2012, 18:20
lisnic1990 вне форума Посмотреть профиль Отправить личное сообщение для lisnic1990 Найти все сообщения от lisnic1990
  № 3  
Ответить с цитированием
lisnic1990
 
Аватар для lisnic1990

Регистрация: May 2012
Адрес: Европа
Сообщений: 11
если делать подобно презентации, то есть уже готовый пример прямо во flash IDE шаблоны presentations, два варианта Simple и Advanced. А xml можно организовать как описано в предыдущем посте. Загружая xml, поместить все считанные строки в массив (либо в Vector, для оптимизации лучше, но работает только с 10-й версии флеш плеера) И по индексу этого массива соответственно отображайте нужную/ые страницы.
__________________
Мои сайт: http://lisnic.tk/

Старый 20.09.2012, 22:50
Yulia_V вне форума Посмотреть профиль Отправить личное сообщение для Yulia_V Найти все сообщения от Yulia_V
  № 4  
Ответить с цитированием
Yulia_V

Регистрация: Sep 2012
Сообщений: 57
Спасибо, сам переключающийся текст я сделала. Но теперь у меня новая задача: надо сделать так, чтоб в зависимости от условия загружались разные XML файлы. Вставила urLлоудер прям в условие, подумала может прокатит - не прокатило, выдаёт ошибку, мол else не требуется. Подскажите пожалуйста что-нибудь.

Старый 20.09.2012, 23:30
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 5  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
не прокатило, выдаёт ошибку, мол else не требуется.
Это гениально. Девушка - показывайте код!
__________________
Марк Tween

Старый 21.09.2012, 05:43
Isfet вне форума Посмотреть профиль Отправить личное сообщение для Isfet Найти все сообщения от Isfet
  № 6  
Ответить с цитированием
Isfet

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
если else не требуется, значит он не требуется, проверьте все условные операторы if...else значит где-то у вас фигурные скобки не в том месте стоят, или лишняя, или два else подряд идут... вариантов много

Старый 21.09.2012, 11:14
Yulia_V вне форума Посмотреть профиль Отправить личное сообщение для Yulia_V Найти все сообщения от Yulia_V
  № 7  
Ответить с цитированием
Yulia_V

Регистрация: Sep 2012
Сообщений: 57
Надо чтоб это условие вызывало разные лоудеры (вместо текст1,2,3)
Код AS3:
stage. addEventListener (MouseEvent.MOUSE_MOVE,onMoseMove);
function onMoseMove (e:MouseEvent):void
{
 
var position:Number = qw_mc.x
 
if(position <= 0){
   text_txt.text="Текст 3"
}else if(position <= 550){
   text_txt.text="Текст 2";
}else if(position <= 1100){
   text_txt.text="Текст 1";
}
   e.updateAfterEvent()
 
}
Первый лоудер:
Код AS3:
import flash.events.MouseEvent;
 
var loader:URLLoader;
// ...
loader = new URLLoader();
loader.addEventListener(Event.COMPLETE, xmlLoaded);
var request:URLRequest = new URLRequest("text.xml");
loader.load(request);
//...
function xmlLoaded(event:Event):void {
var myXML:XML = new XML(loader.data);
var xmlList:XMLList = new XMLList (myXML.page.list);
//trace (myXML.page[0].list);
var i:Number = 0;
trace (xmlList[i]);
trace (xmlList.length());
textfield_txt.text = xmlList[i];
 
next_btn.addEventListener(MouseEvent.CLICK, onClick);
function onClick (e:MouseEvent):void
{
	i ++;
	textfield_txt.text = xmlList[i];
}
prev_btn.addEventListener(MouseEvent.CLICK, onClick2);
function onClick2 (e:MouseEvent):void
{
	i --;
	textfield_txt.text = xmlList[i];
}
}

Старый 21.09.2012, 12:22
Isfet вне форума Посмотреть профиль Отправить личное сообщение для Isfet Найти все сообщения от Isfet
  № 8  
Ответить с цитированием
Isfet

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
Код AS3:
import flash.events.MouseEvent;
function setURLLoader(textName:String){
var loader:URLLoader;
// ...
loader = new URLLoader();
loader.addEventListener(Event.COMPLETE, xmlLoaded);
var request:URLRequest = new URLRequest(textName);
loader.load(request);
}
function xmlLoaded(event:Event):void {
var myXML:XML = new XML(loader.data);
var xmlList:XMLList = new XMLList (myXML.page.list);
//trace (myXML.page[0].list);
var i:Number = 0;
trace (xmlList[i]);
trace (xmlList.length());
textfield_txt.text = xmlList[i];
 
next_btn.addEventListener(MouseEvent.CLICK, onClick);
function onClick (e:MouseEvent):void
{
	i ++;
	textfield_txt.text = xmlList[i];
}
prev_btn.addEventListener(MouseEvent.CLICK, onClick2);
function onClick2 (e:MouseEvent):void
{
	i --;
	textfield_txt.text = xmlList[i];
}
}
Код AS3:
stage. addEventListener (MouseEvent.MOUSE_MOVE,onMoseMove);
function onMoseMove (e:MouseEvent):void
{
 
var position:Number = qw_mc.x
 
if(position <= 0){
    setURLLoader("text1.xml"){
}else if(position <= 550 && position >0){   
    setURLLoader("text2.xml"){
// у вас условия одно включает другое  (0 и 550 тоже меньше 1000, и следовательно выполниться сразу 3 условия)
}else if(position <= 1100 && position >550){    
    setURLLoader("text3.xml"){
 }
   e.updateAfterEvent()
 
}
как то так, но вообще почитайте про классы, прежде чем браться за такие задания.

Старый 21.09.2012, 17:34
Yulia_V вне форума Посмотреть профиль Отправить личное сообщение для Yulia_V Найти все сообщения от Yulia_V
  № 9  
Ответить с цитированием
Yulia_V

Регистрация: Sep 2012
Сообщений: 57
Спасибо, я попробую.
По поводу условий: на примере простого текста text_txt.text="Текст 1"; всё работает как надо. Про классы как раз собираюсь почитать) Ваш пример, как я поняла, надо делать с помощью классов?


Последний раз редактировалось Yulia_V; 21.09.2012 в 17:45.
Старый 22.09.2012, 09:06
Isfet вне форума Посмотреть профиль Отправить личное сообщение для Isfet Найти все сообщения от Isfet
  № 10  
Ответить с цитированием
Isfet

Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
нет, вместо вашего кода вставьте мой

Создать новую тему Ответ Часовой пояс GMT +4, время: 22:17.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 22:17.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.