Flixel - как загрузить изображение с сайта
Автор Сообщение
all__ Не на форуме
Админ
*******

Сообщений: 874
Зарегистрирован: 01.2010
Сообщение: #1
Flixel - как загрузить изображение с сайта
В обще столкнулся с такой задачей, решения пока не нашел.
Нужно загрузить изображение в FlxSprite не при компиляции:
Код:
        [Embed(source = "../lib/img/bg_menu.jpg")]
        private var ImgMenu:Class;
А когда появится ссылка на нужную картинку, как это сделать?

Если вы не знаете как загрузить изображение на форум воспользуйтесь программой ScreenSender





Лучшая благодарность - "Мне нравится", +1 или Like! Вверху страницы.
(Последний раз сообщение было отредактировано 27.09.2011 в 20:53, отредактировал пользователь all__.)
07.09.2011 21:23
Вебсайт Найти все сообщения Цитировать это сообщение
all__ Не на форуме
Админ
*******

Сообщений: 874
Зарегистрирован: 01.2010
Сообщение: #2
RE: Flixel - как загрузить изображение с сайта
После нескольких часов гуглоблудия, удалось собрать класс, загрузить картинку и поместить ее в спрайт Flixel`а.
Здесь спрайт загружается с изображением встроенным на этапе компиляции, а потом функция LoadUrl("http://сайт.с.картинкой"); загружает и встраивает внешнее изображение в FlxSprite.

Код:
package  
{
    /**
     * ...
     * @author all__
     */
    import flash.display.*;
    import flash.events.*;
    import flash.net.URLRequest;
    import org.flixel.*;
    public class Photo extends FlxSprite
    {
        public    var loader:Loader = new Loader();
        [Embed(source = "../lib/img/no-image.png")]
        private var ImgPhoto:Class;

        public function Photo(xpos:Number,ypos:Number)
        {
            super(xpos, ypos, ImgPhoto);
            FlxG.log("Photo.create");
            
        }
        
        public function LoadUrl(url:String):void
        {
            loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadFailure);
            loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete);
            loader.load(new URLRequest(url));
        }

        private function loadFailure(event:IOErrorEvent):void
        {
            loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, loadComplete);
            loader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, loadFailure);
            FlxG.log("Can`t Load...");
        }

        private function loadComplete(event:Event):void
        {
            loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, loadComplete);
            loader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, loadFailure);
            var bt:Bitmap = new Bitmap;
            bt = Bitmap(loader.content);
            pixels=bt.bitmapData;
            FlxG.log("Loaded...");
        }    
    }

}





Лучшая благодарность - "Мне нравится", +1 или Like! Вверху страницы.
(Последний раз сообщение было отредактировано 08.09.2011 в 3:57, отредактировал пользователь all__.)
08.09.2011 1:45
Вебсайт Найти все сообщения Цитировать это сообщение
all__ Не на форуме
Админ
*******

Сообщений: 874
Зарегистрирован: 01.2010
Сообщение: #3
RE: Flixel - как загрузить изображение с сайта
Немного оптимизировал функцию loadComplete():
Код:
        private function loadComplete(event:Event):void
        {
            loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, loadComplete);
            pixels = event.target.content.bitmapData;
            FlxG.log("Loaded...");
        }





Лучшая благодарность - "Мне нравится", +1 или Like! Вверху страницы.
(Последний раз сообщение было отредактировано 08.09.2011 в 2:49, отредактировал пользователь all__.)
08.09.2011 2:47
Вебсайт Найти все сообщения Цитировать это сообщение
Создать ответ 


Похожие темы
Тема: Автор Ответов: Просмотров: Посл. сообщение
  Файловый менеджер для сайта jkeks 5 5 184 22.03.2010 19:56
Посл. сообщение: clk824