トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   迷える子羊の部屋【初心者専用】
     swcを動的ロード
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
y_yyy
Åê¹ÆNo.47923
投稿日時: 2011-8-26 15:28
新米
居住地:
投稿: 7
使用環境:
swcを動的ロード
FlashCS4 AS3.0 環境です。
swcとして提供されている各種ライブラリを実行時にロードすることはできるでしょうか?
現在TFLを使用しているのですがpublishする時間が増えるだけでなく
swfファイルサイズも大幅に増えてしまいました。
永井勝則
Åê¹ÆNo.47945
投稿日時: 2011-9-2 23:10
職人
居住地: 白馬村
投稿: 796
使用環境:
Windows 7 :Flash CS4:
10.6.8 :Flash CS5.5
Re: swcを動的ロード
役に立つかどうか分かりませんが、以下はどうでしょう?
・SWCファイルは実行時にロードできない(ZIP解凍する必要がある)ようなので、SWCファイルに静的にリンクしたSWFを作成し、それをロードする方法を考えました。

ロードするクラスのASファイル。
TweenLiteライブラリをインポート、変数を宣言しておく。
このクラスをドキュメントクラスとするFLAファイルを作成し、TweenLiteのSWCにライブラリパスを設定して、パブリッシュ(DynamicLibSWF.swf)する。

package  {
	
	import flash.display.Sprite;
	import com.greensock.TweenLite;
	
	public class DynamicLibSWF extends Sprite{
		
		
		private var tween:TweenLite;

		public function DynamicLibSWF() {
			// constructor code
		}

	}
}



DynamicLibSWF.swfをロードするFLAファイルのコード

var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.INIT, onInit);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onIOError);
loader.load(new URLRequest("DynamicLibSWF.swf"));

var TweenLite:Class;

function onInit(evt:Event):void
{
	// ローダーからクラスを取り出す
	TweenLite = loader.contentLoaderInfo.applicationDomain.getDefinition("com.greensock.TweenLite") as Class;
	trace(TweenLite);
	action_btn.addEventListener(MouseEvent.CLICK, tweenAction);
}

mc.x = 10;

// 本当にTweenLiteとして機能するかのテスト
function tweenAction(evt:MouseEvent):void
{
	var myTween:Object = new TweenLite(mc, 3, {x:400, alpha:0.5, onComplete:completed});

}

function completed():void
{
	trace("終了")
}

function onIOError(evt:IOErrorEvent):void
{
	trace(evt);
}


----------------
永井勝則:
himco.jp :

y_yyy
Åê¹ÆNo.47997
投稿日時: 2011-9-15 15:32
新米
居住地:
投稿: 7
使用環境:
Re: swcを動的ロード
返信ありがとうございます!
確認が遅れてしまいました..
早速検討してみます。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops