実行時の読み込み用にライブラリをIntelliJ IDEA 12
構成しようとしています。rsl
それについての経験はありますか? またXML
、追加のコンパイラ オプションに入れるサンプルはありますか?
また、このためのプラグインが見つかりませんでした。知っている場合は教えてください
アップデート:
実践プロジェクトをより明確にするには:
単純な形状で使用される 1 つのトゥイーン ライブラリを持つ 2 つの 'swf' を作成したいのですが、そのトゥイーン ライブラリをクロスドメイン rsl にしたいと考えています。
次に、MainApp でロードしてステージ 1 に追加し、次に他の SWF を追加します。私が予想しているのは、rsl が最初にロードされ、2 回目にキャッシュから使用されるということです。
純粋な AS3 でプログラミングしています。例は素晴らしいでしょう:) 今、私はRedSquareとその正方形に適用されたトゥイーンを持つ1つのクラスを構築しようとしています. もちろん、トゥイーンはrslライブラリから取得する必要があります。
更新 2:
[Frame(factoryClass='path.to.class')] を作成するところまで来て、Preloader を作成します。
しかし、ここでは、rsl をロードしてから次のフレームまたはメイン クラスに移動するプリローダーを作成する方法がわかりません。[Frame] タグが行うことは、2 つのフレームを作成することです。1 つはプリローダー用で、もう 1 つは後で実行する必要があるメイン クラス用です。
コンパイラに渡す構成:
<flex-config>
<!-- A list of runtime shared library URLs to be loaded before applications start. -->
<!-- GreenSock -->
<runtime-shared-library-path>
<path-element>/Users/matej/Documents/Projects/Work/External/greensock-as3/greensock.swc</path-element>
<rsl-url>http://localhost/~matej/rsls/greensock.swf</rsl-url>
<policy-file-url>http://localhost/~matej/rsls/crossdomain.xml</policy-file-url>
<rsl-url>http://localhost/rsls/greensock.swf</rsl-url>
<policy-file-url>http://localhost/rsls/crossdomain.xml</policy-file-url>
</runtime-shared-library-path>
<!-- static-link-runtime-shared-libraries: statically link the libraries specified by the -runtime-shared-libraries-path option.-->
<static-link-runtime-shared-libraries>false</static-link-runtime-shared-libraries>
</flex-config>
メインクラス
package {
import com.greensock.TweenLite;
import Preloader;
import flash.display.Sprite;
import flash.events.MouseEvent;
[Frame(factoryClass="Preloader")]
public class RedSquare extends Sprite{
//---------------------------------------------------------------
// Private variables
//---------------------------------------------------------------
private var redRectangle:Sprite;
//---------------------------------------------------------------
// Constructor
//---------------------------------------------------------------
public function RedSquare() {
redRectangle = new Sprite();
redRectangle.graphics.beginFill(0xFFFF0000);
redRectangle.graphics.drawRect(100,100,50,30);
redRectangle.graphics.endFill();
addChild(redRectangle);
redRectangle.addEventListener(MouseEvent.MOUSE_OVER,onOver);
}
//---------------------------------------------------------------
// Public methods
//---------------------------------------------------------------
//---------------------------------------------------------------
// Private methods
//---------------------------------------------------------------
private function onOver(event:MouseEvent):void {
TweenLite.to(redRectangle,3,{x:400,y:200,rotation:160})
}
}
}