Я пытаюсь настроить полноэкранный режим и реализовать элементы текучести, однако неясно, если я должен включить событие отправки в переключатель для изменения размера экрана или это будет то, что будет обнаружено предыдущим eventListener, когда полноэкранный режим активирован переключатель?Делает ли экранный триггер событий в as3?
Кроме того, посмотрев онлайн в течение нескольких дней на эту тему, я все еще не уверен, где оптимально разместить элемент управления размерами элементов сцены.
public function Main():void {
addEventListener(Event.ADDED_TO_STAGE, init);
stage.addEventListener(Event.RESIZE, resizeListener);
stage.addEventListener(FullScreenEvent.FULL_SCREEN_INTERACTIVE_ACCEPTED, fullScreenRedraw);
}
private function resizeListener (e:Event):void {
// - Do I put my resize control options here to cater for general resize or see below?
myMovie.width = stage.stageWidth; // etc
}
private function fullScreen(e:MouseEvent):void {
try {
switch (stage.displayState) {
case StageDisplayState.FULL_SCREEN_INTERACTIVE:
/* If already in full screen mode, switch to normal mode. */
stage.displayState = StageDisplayState.NORMAL;
break;
default:
stage.fullScreenSourceRect = null;
// If not in full screen mode, switch to full screen mode.
stage.dispatchEvent(new Event(Event.RESIZE));
stage.displayState = StageDisplayState.NORMAL;
stage.displayState = StageDisplayState.FULL_SCREEN_INTERACTIVE;
break;
}
} catch (err:SecurityError) {
// ignore
}
}
private function fullScreenRedraw(event:FullScreenEvent):void {
if (event.fullScreen) {
// FULLSCREEN TRUE
// - Or do I put my resize control options here to cater for the fullscreen as well?
myMovie.width = stage.stageWidth; // etc
var fScrField:TextField = new TextField();
fScrField.y = 480;
fScrField.text = "Redraw : True";
addChild(fScrField);
} else {
// NON FULLSCREEN
fScrField.text = "Redraw : False";
addChild(fScrField);
}
}
* * Измененный обработчики, как указано на самана. Но противоречивая информация о том, что происходит где и почему?
private function activateHandler(event:Event):void {
trace("activateHandler: " + event);
}
private function fullScreenRedraw(event:FullScreenEvent):void {
if (event.fullScreen) {
// Add additional panels if set/sizes
var fScrField:TextField = new TextField();
fScrField.y = 480;
fScrField.text = "Redraw : True";
addChild(fScrField);
} else {
// Remove additional panels etc
fScrField.text = "";
fScrField.text = "Redraw : False";
addChild(fScrField);
}
}
Теперь я смог получить работу в всевозможным способами, используя код, приведенный выше с вариациями, но проведя дни онлайн прибегая к помощи там, кажется, нет efficiant или ясное объяснение, которое лучше всего.
Любая помощь в том, где это может быть лучше оптимизировано и сделано более эффективно, поскольку я как бы просто объединил его с тем, что я могу решить.
Заранее спасибо.
Вы вполне можете быть правы, я попробую. Существует так много толкований онлайн, что трудно понять, что эффективно, и что можно сделать ради этого. Метод, который я пытался, заключался в том, чтобы использовать интерактивную клавиатуру, как описано в одном методе, однако, похоже, он не слишком хорошо реагировал на действия после полноэкранного просмотра, поэтому я играл с ним. Что я получил, работал и делал это хорошо, но я просто не знал о всех вариантах, где вы могли бы также реализовать изменения, а затем легко потеряться, как и я. Я буду проверять его в ближайшее время, так как это, безусловно, выглядит легче понять! Благодарю. – esadude
Пока я не развил свой сайт, я сохраню его в качестве опции, но я все еще не доволен вариантами изменения размера/интерактивного изменения размера и должен проверить это еще до того, как я совершу любой путь, что является личной проблемой. m глядя в проблему с изменением размера/полноэкранного режима. У вас явно более простое на практике и работает тоже, но это простое отсутствие правильного и неправильного во вспышке, которое я ненавижу, и особенно с помощью интерактивных опций, мало что на самом деле делает и как это помогает, я просто чувствую себя лучше реализация должна включать его (как-то - вопрос), но спасибо. – esadude
Я использовал интерактивный полноэкранный режим в приложениях AIR (киоск), когда мне нужны текстовые поля. Проверьте это, возможно, вам не хватает некоторых параметров: http://help.adobe.com/en_US/as3/dev/WS58a13becbb904c7-28cf6d32136e60de784-8000.html – mika