all__
Админ
Сообщений: 875
Зарегистрирован: 01.2010
|
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 |
|