Показать сообщение отдельно
Старый 08.12.2010, 17:33
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 12  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Цитата:
Сообщение от 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
	}
 
}
}
__________________
Воспитан в TimeZero. Работаю в Mail.ru.