私は、さまざまな FLA のコンテンツを使用する非常にグラフィックの多いアプリケーションに取り組んでいます。私はコーダーなので、すべてのコーディングを Flash Builder で行いたいのですが、デザイナーが stop(); などのいくつかのタイムライン アクションを引き続き使用できるようにしたいと考えています。ビューを変更するためのいくつかの単純なボタン ハンドラーも含まれています。この種のセットアップに最適なワークフローを見つけようとしています。Embed を使用してみましたが、タイムライン コードが削除されました。Loader を試しましたが、コード補完やコンパイル時のチェックは行われませんでした。現在、カスタム クラスと共に SWC を使用して、内部の要素をサブクラス化しています。これまでのところ最高の組み合わせのように思われる SWC - コード補完が得られ、タイムライン スクリプトは引き続き機能します。私が抱えている問題は、Flash でかなり複雑なビューを使用していることです。
例として、View というライブラリにシンボルを含む FLA があるとします。これを「com.company.view.design.ViewDesign」のリンケージクラスにします。このビュー内には、「content1」、「content2」、「content3」と呼ばれる、それぞれに異なる記号が付いた 3 つのフレームがあります。これらの同様のリンケージ クラス「com.company.view.design.Content1」などを提供します。私のメイン コードベースには、com.company.view.design.ViewDesign を拡張する com.company.view.View というクラスがあります。これにより、View シンボル内のすべてに完全にアクセスできるようになりました。これはすばらしいことであり、View のすべてのタイムライン スクリプトは引き続き機能します。
問題はこれです - これらの 3 つのコンテンツ シンボルは非常に複雑であり、独自の外部クラス (com.company.view.Content1 など) にリンクする最有力候補になりますが、Flash でそれを実行しようとすると、com をインスタンス化するときに.company.view.View 「型強制に失敗しました: flash.display::MovieClip@20bec5e1 を com.company.view.Content1 に変換できません」というエラーが表示されます。
これに対する解決策はありますか、それとも SWC をより多くのライブラリとして扱い、プログラムでビューを構築する必要があるだけですか? デザイナーができるだけ多くのレイアウトを処理できるようにしたいのですが、ビューがますます複雑になっているため、1 つのビューのすべての機能を 1 つのモノリシック クラス (com.company) に配置する必要はありません。 .view.View)。