- 浏览: 1084832 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (695)
- 心情日记 (14)
- AS开发工具 (12)
- 文章转载 (99)
- AIR (5)
- 问题总结 (46)
- SWF格式 (7)
- 测试总结 (10)
- 外文资料 (9)
- 算法技术 (33)
- AS3常用开源库 (43)
- 源码范例 (102)
- FLEX (72)
- FLASH 优化 (33)
- 游戏开发 (49)
- 开发技术 (11)
- 工作应用 (34)
- AS3收集 (140)
- WebBase (0)
- 开发构想 (4)
- 设计模式 (2)
- 框架和框架范例 (19)
- RED5 (3)
- java开发 (3)
- JAVA (1)
- FLASH-3D (23)
- 3D (6)
- 书籍 (10)
- 业界信息资料 (3)
- C# (1)
- JavaScript (12)
- HTML5 (6)
- Flixel (1)
- D5Power RPG网页游戏引擎 (0)
- ColorMatrixFilter - 获得相应颜色的色调 函数 (0)
- Starling (0)
最新评论
-
老顽童203:
字体
水果忍者鼠标跟随特效制作[转载] -
hairball00:
[转] 放出超多的Flash组件源代码 -
he74552775:
flash AS3 RegExp简单功能用法(转) -
hanshuai1232000:
第四点,有利也有弊,等你做了大型的aprg,你就知道了
[转]位图数据内存优化 -
yangfantao:
太感谢
[转] 放出超多的Flash组件源代码
http://blog.csdn.net/shangmw/archive/2010/09/02/5858982.aspx
在Flash中,有Loader类,可以从外部载入一张图片(或swf文件)。但是有个不好的地方就是,不像浏览器那样一边下载一边显示。
所幸的是,Flash提供了Loader.loadBytes方法和URLStream类。
首先,要使用URLStream类,而不是URLLoader。它们的区别就是URLLoader需要等到所有的数据下载完成之后,才能获取。而URLStream可以一边下载,一边就可以取到数据了。
其次,Loader.loadBytes,可以直接发送数据给Loader,而不是让Loader去下载。每一次loadBytes,Loader都会丢弃以前的数据,所以在代码中使用了_data的ByteArray保存数据。
代码如下:
1 package
2 {
3 import flash.display.Loader;
4 import flash.display.Sprite;
5 import flash.display.StageAlign;
6 import flash.events.ContextMenuEvent;
7 import flash.events.Event;
8 import flash.net.URLRequest;
9 import flash.net.URLStream;
10 import flash.ui.ContextMenu;
11 import flash.ui.ContextMenuItem;
12 import flash.utils.ByteArray;
13 import flash.utils.getTimer;
14 public class Main extends Sprite
15 {
16 private var _loader:Loader = new Loader();
17 private var _urlstream:URLStream = new URLStream();
18 private var _data:ByteArray = new ByteArray();
19 public function Main():void
20 {
21 var loadmenu:ContextMenuItem = new ContextMenuItem("Load image");
22 loadmenu.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, this.onLoadImage, false);
23 this.contextMenu = new ContextMenu();
24 this.contextMenu.customItems.push(loadmenu);
25
26 _urlstream.addEventListener('progress', processData);
27 _urlstream.addEventListener('complete', processData);
28
29 addChild(_loader);
30
31 stage.align = StageAlign.TOP_LEFT;
32 }
33 public function onLoadImage(e:Event):void
34 {
35 _loader.unload();
36 _data.length = 0;
37 var url:String = "http://files.cnblogs.com/Greatest/test.jpg.zip";
38 _urlstream.load(new URLRequest(url + "?q=" + getTimer()))
39 }
40 public function processData(e:Event):void
41 {
42 var oldlen:int = _data.length;
43 _urlstream.readBytes(_data, _data.length);
44 if (_data.length > oldlen)
45 {
46 _loader.loadBytes(_data);
47 }
48 }
49 }
50 }
from:http://www.xker.com/page/e2009/1006/80637.html
在Flash中,有Loader类,可以从外部载入一张图片(或swf文件)。但是有个不好的地方就是,不像浏览器那样一边下载一边显示。
所幸的是,Flash提供了Loader.loadBytes方法和URLStream类。
首先,要使用URLStream类,而不是URLLoader。它们的区别就是URLLoader需要等到所有的数据下载完成之后,才能获取。而URLStream可以一边下载,一边就可以取到数据了。
其次,Loader.loadBytes,可以直接发送数据给Loader,而不是让Loader去下载。每一次loadBytes,Loader都会丢弃以前的数据,所以在代码中使用了_data的ByteArray保存数据。
代码如下:
1 package
2 {
3 import flash.display.Loader;
4 import flash.display.Sprite;
5 import flash.display.StageAlign;
6 import flash.events.ContextMenuEvent;
7 import flash.events.Event;
8 import flash.net.URLRequest;
9 import flash.net.URLStream;
10 import flash.ui.ContextMenu;
11 import flash.ui.ContextMenuItem;
12 import flash.utils.ByteArray;
13 import flash.utils.getTimer;
14 public class Main extends Sprite
15 {
16 private var _loader:Loader = new Loader();
17 private var _urlstream:URLStream = new URLStream();
18 private var _data:ByteArray = new ByteArray();
19 public function Main():void
20 {
21 var loadmenu:ContextMenuItem = new ContextMenuItem("Load image");
22 loadmenu.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, this.onLoadImage, false);
23 this.contextMenu = new ContextMenu();
24 this.contextMenu.customItems.push(loadmenu);
25
26 _urlstream.addEventListener('progress', processData);
27 _urlstream.addEventListener('complete', processData);
28
29 addChild(_loader);
30
31 stage.align = StageAlign.TOP_LEFT;
32 }
33 public function onLoadImage(e:Event):void
34 {
35 _loader.unload();
36 _data.length = 0;
37 var url:String = "http://files.cnblogs.com/Greatest/test.jpg.zip";
38 _urlstream.load(new URLRequest(url + "?q=" + getTimer()))
39 }
40 public function processData(e:Event):void
41 {
42 var oldlen:int = _data.length;
43 _urlstream.readBytes(_data, _data.length);
44 if (_data.length > oldlen)
45 {
46 _loader.loadBytes(_data);
47 }
48 }
49 }
50 }
from:http://www.xker.com/page/e2009/1006/80637.html
发表评论
-
greenSock新老库
2012-08-07 13:25 0老库-做项目的时候比新库完全不抖啊 -
Starling开发的游戏源码
2012-07-26 17:13 0Starling开发的游戏源码 -
一个基于STARLING的TOWER塔防游戏
2012-07-24 15:27 0一个基于STARLING的TOWER塔防游戏 -
HttpStatusConfig --一个HTTP 协议返回的 解析说明类
2012-04-18 16:40 0package guwanyuan.qicool.game ... -
[转] [Flash/Flex] 加载SWF性能VS影片剪辑性能
2012-03-15 22:29 0http://bbs.9ria.com/viewthread. ... -
水果忍者鼠标跟随特效制作[转载]
2012-03-01 16:06 2449实现这效果其实比较简单,主要是思路~! package ... -
greensock-as3
2012-02-23 21:26 0greensock-as3 -
禁止输入文本可以粘贴
2012-02-10 13:15 2316//禁止输入文本粘贴动作 private static ... -
江湖情缘游戏里的跳的类
2012-02-08 23:55 0package com.app.role.montions ... -
ColorMatrixFilter - 获得相应颜色的色调 函数
2012-02-08 23:03 0/**获得相应颜色的色调的滤镜**/ public sta ... -
[教程] 路点导航(Waypoint Navigation)
2011-12-31 00:51 0前言:这个不难,所以知道的童鞋不要喷,不知道的童鞋也不要怕,要 ... -
ARPG游戏引擎设计思路
2011-12-31 00:48 00.整体结构 下载 (32.92 KB ... -
Flash_Rich_Text_Editor(完美的富文本编辑器)
2011-12-27 17:55 0Flash_Rich_Text_Editor(完美的富文 ... -
弹弹堂测试
2011-12-08 04:21 0弹弹堂测试弹弹堂测试 -
一些DEMO
2011-11-28 17:42 0一些DEMO一些DEMO -
[转]三次贝尔曲线
2011-11-10 01:09 1923http://bbs.9ria.com/viewt ... -
[心得] 完美解决as3在ie中初始化时stageWidth和stageHeight为0的问题
2011-11-03 00:46 2938先看下面的一段脚本,这是比较经典的初始化脚本: pa ... -
五子棋算法详解
2011-10-31 04:14 0五子棋算法详解五子棋算法详解五子棋算法详解 -
[转]服务器端ActionScript语言参考
2011-10-31 00:29 0服务器端ActionScript语言参考 -
Flash Player和Adobe AIR内部的垃圾回收机制
2011-10-29 22:37 0资讯类型: 翻译 来源页面: http://www.ad ...
相关推荐
首先,我们需要了解Flash中的两种主要的图片加载方式:使用Loader类和使用BitmapData类。Loader类是ActionScript 3.0中用于加载图形内容的主要工具,包括图片、SWF文件等。BitmapData类则用于处理位图数据,它可以...
Flash资源加载策略是优化Flash应用程序性能的关键因素,主要涉及到如何有效地加载和管理各种类型的资源,如图像、文本、音频和SWF文件等。在Flash中,有两个主要的加载类:URLLoader和Loader。 URLLoader主要用于...
通过以上步骤,你可以在Adobe Flash Builder 4.5中开发Android AIR应用程序,利用`CameraRoll`和`Loader`类实现相机和相册功能,使用户能够浏览、选择并显示设备上的图片。注意处理可能的错误和事件,确保应用的健壮...
2. **动态加载**:使用`URLLoader`或`Loader`类动态加载图片资源。 3. **嵌入资源**:通过`Embed`元数据将图片资源直接嵌入到AS文件中。 4. **ByteArray方式**:将图片转换为`ByteArray`格式后加载。 其中,第四种...
`Loader`类是ActionScript 3.0中的一个核心组件,它负责加载各种类型的媒体,包括图像(如GIF和JPEG)。 以下是使用`Loader`类加载图像的基本步骤: 1. 创建`Loader`对象:`var loader:Loader = new Loader();` 2....
flex 打开本地图片并进行显示 var loader:Loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, this.onLoadByted); loader.loadBytes(this.fileReference.data);
本篇文章将详细讲解如何在Flex中实现实时图片预览和加载图片到内存的技术。 首先,我们要明白Flex中的图片处理主要是通过`mx.controls.Image`组件来完成的。`Image`组件可以显示静态图像,如JPEG、PNG和GIF格式。...
`Loader.loadBytes()`方法接收`FileReference`对象的`data`属性(即用户选择文件的二进制数据),加载完成后,图片可以在舞台上进行展示。 4. **图片裁剪**:为了适应不同的头像尺寸要求,通常会添加裁剪功能。这...
要通过`ByteArray`播放MP3文件,我们首先需要创建一个包含MP3文件的SWF文件,然后使用`Loader.loadBytes()`方法来加载这个SWF文件。 ### 创建包含MP3的SWF文件 为了演示如何将MP3文件嵌入到SWF文件中,我们可以...
在AS3(ActionScript 3)中,将PNG图片转换为二进制数据是一种常见的优化图像加载和显示的方法。这主要是因为二进制数据能够更有效地处理和传输,特别是对于大量图片的应用,如游戏或者多媒体项目。以下是关于这个...
由于每个SWF版本都引入了新的特性和功能,低版本的SWF在高版本的Flash Player环境中可能无法正常工作或无法充分利用新特性。`ForcibleLoader.as` 类提供了一个解决方案,它允许开发者将版本9以下的SWF文件转换为版本...
前段时间在flashseer看到有人提到:可以通过socket方式传送swf文件,让用户无法获取到swf文件… 当时还没有出as3的反...前台swf适用Loader.loadBytes方法显示主程序文件. 下面是测试的源程序: package { import flas
Loader类是AS3.0中用于加载和管理外部资源的核心类之一,它可以加载各种类型的文件,如SWF、JPEG、GIF和PNG等格式。以下是对Loader类的一些关键方法和属性的介绍: 1. **构造函数Loader()**:创建一个新的Loader...
在ActionScript 3 (AS3)中,动态加载字体是一种技术,允许开发者在应用程序运行时加载和使用新的字体。这可以极大地提高应用的灵活性,尤其是对于那些需要展示各种独特字体或者用户可定制字体的应用。本知识点将深入...
1. **加载媒体文件**:ActionScript 3.0中的`flash.net`包提供了`Loader`类,可以用来加载各种类型的二进制数据,包括音频和视频文件。通过`LoaderContext`,我们可以设置加载策略,如允许跨域访问或者指定安全沙箱...
1. 加载PBK文件:首先,你需要使用`loadBytes()`方法加载PBK文件内容,然后通过`Pixel Bender Loader`类解析这个字节数据。 2. 创建滤镜实例:解析完成后,你可以创建一个`Pixel Bender Filter`实例,传入解析出的...
有在LINQPad的的Util类新方法来加载/字符串或字节数组保存到一个中央计算机存储(查询之间共享)。这些方法Util.SaveString,Util.SaveBytes,Util.LoadString和Util.LoadBytes。 LINQPad的嵌入式ILSpy现在已经更新...
These methods are Util.SaveString, Util.SaveBytes, Util.LoadString, and Util.LoadBytes. LINQPad's embedded ILSpy has now been updated to V4. You can now enable or disable compiler optimizations on a ...
"VB 读取 txt 文件到 textbox" VB 读取 txt 文件到 textbox 是 VB 编程中的一种常见...VB 读取 txt 文件到 textbox 可以通过多种方法来实现,包括使用 File 系统对象、TextStream 对象和 FileSystemObject 对象等。