2

Flash プロジェクトの構造は次のとおりです。SWC を使用して純粋な AS3 コード プロジェクトにインポートされた、グラフィック アセット (シンボル) を含む 2 つの FLA ファイル。

ここに画像の説明を入力

ui.fla と login.fla の両方で使用されているシンボルがいくつかあるので、共有ライブラリに配置したいと考えています。

ここに画像の説明を入力

問題は、shared.fla のシンボルを ui.fla のコードなどで使用するのではなく、オーサリング環境で使用したくないため、シンボルを shared.fla から ui.fla のシンボルに (コピーせずに) ドラッグできるようにすることです。これは可能ですか?

4

1 に答える 1

2

Remote Shared Library(RSL)を介してアセットを共有することができます。

しかし、注意してください。私はこの方法を本番環境で見たことがありません。数年前の私の実験にすぎません。

次に例を示します。

  1. 共有アセットを含むドキュメントを作成します。「shared_lib」という名前を付けます
  2. シンボルを作成します。RSL 用に準備します。
    • Flash IDE で、[ライブラリ] -> シンボル (右クリック) -> [プロパティ...] を選択します。
    • Export for ActionScript&を選択Export in frame 1し、シンボルの名前を入力します
    • を選択しExport for runtime sharingます。その swf の名前を入力します: 「shared_lib.swf」
    • OK
    • Publishそれを SWF と SWC に

これでライブラリができました。それを使用するアセットを作成しましょう

  1. 別のドキュメントを作成し、それを「mainui」と呼びましょう。
  2. 「shared_lib」に戻り、Libraryエクスポートされたシンボルを選択しますCTRL + C(または右クリックしてコピーします)。
  3. 作成したばかりの「mainui」に戻り、に貼り付けLibraryます。
  4. 他のシンボルを作成し、それを ActionScript 用にエクスポートして、インポートしたシンボルを配置します。
  5. それをコンパイルし、SWC、SWF にエクスポートします。

このステップではshared_lib.swf、 、shared_lib.swcおよびがありmainui.swcます。アウトmainuiでは、外部アセットも扱うことができます。同じ方法で別のアセットを作成できます。

アセットを使用するプロジェクト設定について話しましょう。

それで、私たちは現時点で正確に何を持っていますか?Mainui.swcの「仮想」シンボルを含むシンボルがあります。プロファイラーを使用してブラウザーにロードしようとすると、最初に がロードされ、次に がmainui.swfロードされることがわかります。mainui.swfshared_lib.swf

しかし、いくつかのプロジェクトを作成して include しようとするとmainui.swc、未定義のシンボルでエラーが発生します。これは、mainui を持つものはすべて、shared_lib からのシンボルへの仮想参照にすぎないためです。

これを解決するには、プロジェクトに完全に含める必要がありshared_lib.swcます。この場合、次のようになります。

  • ライブラリパスディレクティブ経由:オプションで含まれていますmainui.swc
  • include-libraries ディレクティブ経由: 完全に含まれていますshared_lib.swc

これで動作します。

うまくいけば、それは役に立ちます。

于 2012-09-26T19:52:44.113 に答える