2009-05-21 2 views
0

私のフレックスアプリにプリローダーが表示されるのに問題があります。私はフラッシュアプ​​リケーションを開発するときにこの問題を抱えたことはなかったので、フレックスアプリケーションの読み込み中にプレローダーを表示する唯一の目的で、フラッシュアプ​​リケーションをシェルとして使用するという考えが得られました。私はこれをどうやって行うかわからないし、シェルフラッシュアプ​​リケーションからフレックスアプリケーションにFlashVarsを渡す必要もある。誰でもこれがどうやってできるのか知っていますか?FlexをロードしてURLVarsを渡すには、Flashをシェルとして使用しますか?

答えて

0

Flexは、アプリケーションクラスを通じてプリローダーをサポートしているため、ハックに頼らざるを得ません。詳細は、「Flex 3開発ガイド(Flex 3 Developer Guide)」のCh。 14(「アプリケーションコンテナ」)。私は決して純粋なフラッシュプリローダーをプログラムしたことはありませんでしたが、私はそれがFlexのものとは異なると考えています。多分2人は葛藤するだろうか?

0

私はSimonに同意することから始めますが、あなたが話しているハックを作成する方法があります。

残念ながら、Flexのアプリケーションの親レイヤーは常に-1を返すようにnumChildrenをオーバーライドします。これは、Flexから親swfにアクセスすることはできず、Flashから子孫SWFに直接アクセスすることもできないことになります(面白いことに、FlexアプリケーションがFlash SWFを読み込む場合は問題ありません)。

周囲の道:

  1. カスタムイベントを作成します。 trueにバブルを設定し、falseにcancelableを設定します。
  2. そのイベントのイベントリスナーをFlashレイヤーに追加します。
  3. Flexアプリケーションのアプリケーションレイヤから送信します。
このイベントを処理する関数は、イベントのtargetプロパティを使用して、Flexアプリケーションのアプリケーションレイヤにアクセスできるようになりました。

関連する問題