Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   API приложений и сред (http://www.flasher.ru/forum/forumdisplay.php?f=61)
-   -   При запуске приложения со стены прелоудер висит и не чего не происходит (http://www.flasher.ru/forum/showthread.php?t=171787)

dsdbonus 24.11.2011 13:19

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

Код прелоудера:
Код AS3:

package
{
        import flash.display.MovieClip;
        import flash.display.Sprite;
        import flash.events.Event;
        import flash.events.MouseEvent;
        import flash.events.ProgressEvent;
 
        import mx.events.FlexEvent;
        import mx.preloaders.IPreloaderDisplay;
        import mx.preloaders.Preloader;
 
        public class PreloaderScreen extends Sprite implements IPreloaderDisplay
        {
                [Embed(source='../resources/loading.swf', symbol='loading')]
                private var LoaderMC:Class;
 
                private var _loader_mc:*;
                public var flashVars:Object
 
                public function PreloaderScreen()
                {
                        super();
                        this._loader_mc = new LoaderMC();
                        this.addChild(this._loader_mc);
                        //this._loader_mc.gotoAndStop(50);
                        addEventListener(Event.ENTER_FRAME, onEnterFrame);
                        if (stage)
                                flashVars = stage.loaderInfo.parameters as Object;
                        if (flashVars)
                                this.removeChild(this._loader_mc);
                }
 
                private function onEnterFrame(event:Event):void
                {
                        updatePosition();
                }
 
                public function get backgroundAlpha():Number
                {
                        return 0;
                }
 
                public function set backgroundAlpha(value:Number):void {}
 
                public function get backgroundColor():uint
                {
                        return 0;
                }
 
                public function set backgroundColor(value:uint):void {}
 
                public function get backgroundImage():Object
                {
                        return null;
                }
 
                public function set backgroundImage(value:Object):void{}
 
                public function get backgroundSize():String
                {
                        return null;
                }
 
                public function set backgroundSize(value:String):void{}
 
                private var _preloader:Preloader;
                public function set preloader(obj:Sprite):void
                {
                        _preloader = obj as Preloader;
                        _preloader.addEventListener(ProgressEvent.PROGRESS, progressEventHandler);
                        _preloader.addEventListener(FlexEvent.INIT_COMPLETE, initCompleteEventHandler);
                }
 
                public function get stageHeight():Number
                {
                        return 0;
                }
 
                public function set stageHeight(value:Number):void{}
 
                public function get stageWidth():Number
                {
                        return 0;
                }
 
                public function set stageWidth(value:Number):void {}
 
                public function initialize():void
                {
                        updatePosition();
                }
 
                private function updatePosition():void
                {
                        if (stage)
                        {
                                _loader_mc.x = 800 / 2;
                                _loader_mc.y = 730 / 2 - 33/2;
                        }
                }
                private function progressEventHandler(eo:ProgressEvent):void
                {
                        //_loader_mc.gotoAndStop(Math.max(Math.round((eo.bytesLoaded / eo.bytesTotal )*_loader_mc.totalFrames), 1));
                }
 
                private function initCompleteEventHandler(eo:Event):void{
                        dispatchEvent(new Event(Event.COMPLETE));
 
                        _preloader.removeEventListener(ProgressEvent.PROGRESS, progressEventHandler);
                        _preloader.removeEventListener(FlexEvent.INIT_COMPLETE,initCompleteEventHandler);
 
                        _preloader = null;
                        removeEventListener(Event.ENTER_FRAME, onEnterFrame);
                }
        }

Ну и в основном Апликейшине:
Код AS3:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                          xmlns:s="library://ns.adobe.com/flex/spark"
                          xmlns:mx="library://ns.adobe.com/flex/mx" width="800" height="730"
                          xmlns:screen="screen.*"
                          preloader="PreloaderScreen"
                          creationComplete="creationCompleteHandler(event)">
..........................


GBee 24.11.2011 14:09

Потому что на стене открывается во wrappere

Bgg 24.11.2011 14:14

Цитата:

Сообщение от GBee (Сообщение 1047948)
Потому что на стене открывается во wrappere

Не всегда. Чтобы открылось с враппером нужно в настройках переключится на Flash приложение и там установить "Использовать враппер". По умолчанию на стене враппера нет.

Автор, ставьте брекпоинты и отлаживайте удаленно.

Zebestov 24.11.2011 14:44

Цитата:

При запуске со стины приложения весит прелоудер и не чего не происходит
Цитата:

...если открыть на стене с опубликованной записи, то лоудинг висит и все...
Это что за выходки!

dsdbonus 24.11.2011 15:18

Zebestov Дак исправил опечатки)

А по делу, там фигня какая то, пытался привязать по этому самому лоудеру по клику что бы диспатчить комплит и валиться типа диспатч нету такой функции, вообще бред.
Контейнер у меня в настройках разумеется не стоит.

dsdbonus 29.11.2011 15:08

В общем дело было в спарковом апликейшине. мх поставил все заработало... бред...

GBee 29.11.2011 15:18

Цитата:

Не всегда. Чтобы открылось с враппером нужно в настройках переключится на Flash приложение и там установить "Использовать враппер". По умолчанию на стене враппера нет.
Когда перешли на посредник, враппер на стене остался, видимо баг контакта.


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

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