Цитата:
Сообщение от Psycho Tiger
dimarik, Блуд мне в комментах к той статье как раз говорил обратное - тащим у Loader`а во время загрузки.
|
Специально проверил. Во время progress невозможно получить загруженные bytes. Может я не так ччто-то делаю?

Код AS3:
///////////////////////////////////////////////////////////////////////////////
//
// Copyright (C) 2010. Dimarik
//
///////////////////////////////////////////////////////////////////////////////
package
{
import flash.display.Loader;
import flash.display.LoaderInfo;
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;
import flash.events.IEventDispatcher;
import flash.events.ProgressEvent;
import flash.net.URLRequest;
/**
* @author Dimarik
* @version 1.0
* @langversion 3.0
* @playerversion 9.0
*
*/
[SWF(width="1024", height="768", frameRate="21", backgroundColor="#E0EEEE")]
public class LoaderTest extends Sprite {
//-------------------------------------------------------------------------
//
// Constructor
//
//-------------------------------------------------------------------------
public function LoaderTest() {
super();
super.addEventListener(Event.ADDED_TO_STAGE, this.initialize);
}
//-------------------------------------------------------------------------
//
// Private variables
//
//-------------------------------------------------------------------------
//-------------------------------------------------------------------------
//
// Private methods
//
//-------------------------------------------------------------------------
public function initialize(event:Event):void {
(event.target as IEventDispatcher).removeEventListener(event.type, arguments.callee);
super.stage.scaleMode = StageScaleMode.NO_SCALE;
super.stage.align = StageAlign.TOP_LEFT;
var url: String = 'http://www.pixeljoint.com/files/icons/full/tree2__r1368268481.gif';
var request: URLRequest = new URLRequest(url);
var loader: Loader = new Loader();
loader.load(request);
var li: LoaderInfo = loader.contentLoaderInfo;
li.addEventListener(Event.COMPLETE, this.handler_complete);
li.addEventListener(ProgressEvent.PROGRESS, this.handler_progress);
}
//-------------------------------------------------------------------------
//
// Events handlers
//
//-------------------------------------------------------------------------
/**
* @private
*/
private function handler_complete(event:Event):void {
var li:LoaderInfo = event.target as LoaderInfo;
trace('handler_complete, length', li.bytes.length); // 584458
super.addChild(li.loader.content);
}
/**
* @private
*/
private function handler_progress(event:ProgressEvent):void {
var li:LoaderInfo = event.target as LoaderInfo;
trace('handler_progress, length', li.bytes.length); // 0
}
}
}