两种AS3加载图片的方法
来源:互联网 发布:编程马拉松大赛 编辑:程序博客网 时间:2024/04/29 22:22
加载图片的方法
package net.burchin.loading {
import flash.display.Sprite;
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.Loader;
import flash.display.LoaderInfo;
import flash.text.TextField;
import flash.net.URLRequest;
import flash.events.Event;
import flash.events.ProgressEvent;
import flash.geom.Matrix;
public class LoadingDoc extends Sprite {
private var _imageData:BitmapData; //图片
private var _loader:Loader; //装载
private var _rate:TextField; //进度显示
public function LoadingDoc() {
init();
_rate.text = '开始下载';
_rate.;
_rate.textColor = 0x000000;
_rate.x = (stage.stageWidth - _rate.width)/2;
_rate.y = (stage.stageHeight - _rate.height)/2;
this.addChild(_rate);
sendRequest('images/flower.jpg');
}
//初始化
private function init() {
_imageData = new BitmapData(stage.stageWidth, stage.stageHeight, true, 0xFFFFFFFF);
_loader = new Loader();
_rate = new TextField();
}
//发送请求
private function sendRequest(p_url:String) {
var m_request = new URLRequest(p_url);
_loader.load(m_request);
_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
_loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgress);
}
//事件,下载完毕
private function onComplete(e:Event) {
_imageData.draw(_loader, new Matrix(stage.stageWidth/_loader.width, 0, 0, stage.stageHeight/_loader.height, 0, 0));
var m_image:Bitmap = new Bitmap(_imageData);
this.removeChild(_rate);
this.addChild(m_image);
}
//事件,下载中
private function onProgress(e:Event) {
var m_info:LoaderInfo = e.target as LoaderInfo;
var m_percent:uint = (m_info.bytesLoaded/m_info.bytesTotal)*100;
_rate.text = '已经下载'+m_percent.toString()+'%';
}
}
}
另一种:
package net.burchin.loading {
import flash.display.Sprite;
import flash.display.BitmapData;
import flash.display.Bitmap;
import flash.display.Loader;
import flash.net.URLRequest;
import flash.net.URLLoader;
import flash.net.URLLoaderDataFormat;
import flash.utils.ByteArray;
import flash.events.Event;
import flash.geom.Matrix;
public class LoadingByByteArrayDoc extends Sprite {
private var _imageData:BitmapData; //图片数据
private var _loader:Loader; //装载
public function LoadingByByteArrayDoc():void {
init();
sendRequest('images/flower.jpg');
}
//初始化
private function init():void {
_imageData = new BitmapData(stage.stageWidth, stage.stageHeight, true, 0xFFFFFFFF);
_loader = new Loader();
}
//发送请求
private function sendRequest(p_url:String):void {
var m_request:URLRequest = new URLRequest(p_url);
var m_loader:URLLoader = new URLLoader();
m_loader.dataFormat = URLLoaderDataFormat.BINARY;
m_loader.addEventListener(Event.COMPLETE, onSendComplete);
m_loader.load(m_request);
}
//事件,请求发送完毕
private function onSendComplete(e:Event):void {
var m_content:ByteArray = e.target.data as ByteArray;
_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoadComplete);
_loader.loadBytes(m_content);
}
//事件,装载完毕
private function onLoadComplete(e:Event):void {
_imageData.draw(_loader, new Matrix(stage.stageWidth/_loader.width, 0, 0, stage.stageHeight/_loader.height, 0, 0));
var m_image:Bitmap = new Bitmap(_imageData);
this.addChild(m_image);
}
}
}
简单写法
var loader:Loader=new Loader();
loader.load(new URLRequest("yourPictureUri.jpg"));
this.addChild(loader);
- 两种AS3加载图片的方法
- 两种AS3加载图片的方法
- as3加载外部图片的方法详解
- MFC加载图片的两种方法
- Flash AS3.0加载外部资源(图片、MP3、SWF)的两种方式
- UIImage加载图片的两种方法区别
- 加载png图片的两种方法 - GDI+和CImage
- 在Unity3D中加载外部图片的两种方法
- 在Unity3D中加载外部图片的两种方法
- 加载png图片的两种方法 - GDI+和CImage
- 在Unity3D中加载外部图片的两种方法
- 在Unity3D中加载外部图片的两种方法
- UIImage加载图片的两种方法区别
- Opencv判断是否加载图片的两种方法
- 在Unity3D中加载外部图片的两种方法
- web图片延时加载两种方法
- 实现AS3的Singleton的两种方法
- as3关于XML数据载入的两种方法
- 识别真实图片格式
- Ubuntu中的minicom的安装过程
- android悬浮窗口的实现
- 壳的思路
- 蓝桥杯第一题
- 两种AS3加载图片的方法
- 如何查看SQL Server 2005数据库的端口号
- skydriver
- 文件操作
- 5.28 JSP+Struts2+Spring
- HTTP浅谈
- struts2学习笔记7-OGNL表达式
- 初学数据库遇到的一些问题
- Android下头像选择