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

Вернуться   Форум Flasher.ru > Flash > Flash Приложения: AIR, Zinc и тд.

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 11.07.2015, 02:47
Zebestov вне форума Посмотреть профиль Отправить личное сообщение для Zebestov Посетить домашнюю страницу Zebestov Найти все сообщения от Zebestov
  № 1  
Ответить с цитированием
Zebestov
Lorem ipsum
 
Аватар для Zebestov

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
По умолчанию Смена изображения при смене ориентации

Парни!
А не знает ли кто как заставить AIR красиво менять изображение при смене ориентации. Ну чтобы как в любом даже самом зачуханом нативном приложении — фейдом менялось от того, что было, к тому, что будет. Бо меня как законченного перфекциониста бесит это скачкообразное убожество, которое происходит на экране.
Если что, речь идет о нативном дисплейлисте.
__________________
Поймай яблоко 2!

Старый 11.07.2015, 09:24
Astraport вне форума Посмотреть профиль Отправить личное сообщение для Astraport Найти все сообщения от Astraport
  № 2  
Ответить с цитированием
Astraport
 
Аватар для Astraport

блогер
Регистрация: Sep 2009
Сообщений: 2,463
Записей в блоге: 2
ORIENTATION_CHANGING event не пробовал?
__________________
In Code We Trust

Старый 11.07.2015, 11:49
Zebestov вне форума Посмотреть профиль Отправить личное сообщение для Zebestov Посетить домашнюю страницу Zebestov Найти все сообщения от Zebestov
  № 3  
Ответить с цитированием
Zebestov
Lorem ipsum
 
Аватар для Zebestov

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Все пробовал. Дело не в этом. В самом AIR криво реализовали. У тебя нет контроля в процессе проворачивания — так бы сам что-то намутил.

Попробовал через черный экран, но есть один глюк, который заставляет отказаться. Дело в том, что у меня получается повернуть мой девайс так, что он кидает CHANGING и CHANGE, но еще не поворачивает экран (не кидает RESIZE). Так вот в этом промежуточном положении с черным экраном девайс может оказаться лежа на столе, например.

Фигня это все.
__________________
Поймай яблоко 2!

Старый 11.07.2015, 16:59
AlexCooper вне форума Посмотреть профиль Отправить личное сообщение для AlexCooper Найти все сообщения от AlexCooper
  № 4  
Ответить с цитированием
AlexCooper
 
Аватар для AlexCooper

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
Где-то был на просторах фикс. Он основывался на том, что нативное событие прерывалось, и по факту, сама ориентация не менялась, а только отслеживалась

Добавлено через 8 минут
Да и предлагалось два метода отслеживания. Первый получать события и прерывать их, второе основывалось на гироскопе и отключенной автоориентацией.

Добавлено через 12 минут
Нашел в тестах кусочек кода
Код AS3:
stage.addEventListener(StageOrientationEvent.ORIENTATION_CHANGE,orientationChangeListener);
stage.addEventListener(StageOrientationEvent.ORIENTATION_CHANGING, orientationChangeListener);
 
protected function orientationChangeListener(event:StageOrientationEvent = null):void
		{				
			//event.stopImmediatePropagation();
 
			if (config.unset) {
 
				event.preventDefault();
				return;
			}
 
			while(numChildren) removeChildAt(0);
 
			if (!event) event = new StageOrientationEvent(StageOrientation.DEFAULT);
 
			switch(event.afterOrientation)
			{ 	case StageOrientation.DEFAULT:
				case StageOrientation.UNKNOWN:
				case StageOrientation.UPSIDE_DOWN:
					gui = new gui_pageHomeV();
					/*gui.width = 800;
					gui.height = 1024;
					/*gui.width = stage.fullScreenWidth;
					gui.height = stage.fullScreenHeight;*/
				break;
				default:
 
					gui = new gui_pageHomeH();
				/*	gui.width =1024 ;
					gui.height = 800;*/
 
				break;
			}
			gui.width = stage.fullScreenHeight;
			gui.height = stage.fullScreenWidth;
			addChild( gui );
			if(event)
			addLog('type '+event.type+' before '+event.beforeOrientation+' after '+event.afterOrientation);
 
			addLog('FW: '+FW+' FH: '+FH+" "+stage.width+"x"+stage.height);
 
 
		}
__________________
return this...


Последний раз редактировалось AlexCooper; 11.07.2015 в 17:13.
Старый 11.07.2015, 18:38
Zebestov вне форума Посмотреть профиль Отправить личное сообщение для Zebestov Посетить домашнюю страницу Zebestov Найти все сообщения от Zebestov
  № 5  
Ответить с цитированием
Zebestov
Lorem ipsum
 
Аватар для Zebestov

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Это прекрасно работает, если хочется менять координатную сетку совсем уж врукопашную.
Я же не хочу отказываться от того, что система координат "флипнулась". Мне лишь не нравится анимация.

У меня же ситуаций решилась и вовсе без этих всех премудростей. Зачем мне вообще пользователя слушать? Все проще: портретная фотка — портретная ориентация, альбомная — соответственно! Меняем ориентацию на свое усмотрение с помощью stage.setOrientation() и никаких тебе промежуточных положений, отловов событий. Все красиво, плавно ушли в ЗТМ, повернули (как и положено топорно, по-AIRовски), плавно вышли из ЗТМ — лепота!
__________________
Поймай яблоко 2!

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

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
Вообще конечно Вам решение подходит)
__________________
return this...

Старый 11.07.2015, 18:52
Zebestov вне форума Посмотреть профиль Отправить личное сообщение для Zebestov Посетить домашнюю страницу Zebestov Найти все сообщения от Zebestov
  № 7  
Ответить с цитированием
Zebestov
Lorem ipsum
 
Аватар для Zebestov

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Совершенно верно, случай индивидуальный, так что пронесло )
__________________
Поймай яблоко 2!

Старый 11.07.2015, 19:35
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 8  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Вадим, что за приложуху мутишь? Игру?

Старый 11.07.2015, 20:07
Zebestov вне форума Посмотреть профиль Отправить личное сообщение для Zebestov Посетить домашнюю страницу Zebestov Найти все сообщения от Zebestov
  № 9  
Ответить с цитированием
Zebestov
Lorem ipsum
 
Аватар для Zebestov

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Не, такой себе редактор фотографий простенький
__________________
Поймай яблоко 2!

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

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

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


 


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


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