0

私は flex4 に as:VideoPlayer を持っています。

しかし、フルスクリーンでそれらを削除したい:

私は試しました:

    protected function fullScreenHandler(event:FullScreenEvent):void {
        trace("fullscreen="+event.fullScreen);
        video1.playerControls.visible = false;//                
    }

無効 !実際、フルスクリーンモードに入ると、プレーヤーをまったく制御できなくなったようです。例: 透かしのロゴが表示されなくなり、ボタンを非表示にすることはできません。

どんな手掛かり ?

よろしく

4

1 に答える 1

2

spark.components.VideoPlayer のドキュメントにある ように、ここVideoPlayer.playerControlsはスキン パーツです。スキン パーツのplayerControls目的は、全画面表示中にビデオ プレーヤーを操作しない場合にフェードアウトするコントロールを決定することです。そのため、プレイヤーはほぼすべてのプレイヤーと同じように動作します。ユーザーが何もしない場合、コントロールは非表示になります。

多分それはあなたが(再)実装しようとした動作です。しかし、プレーヤーが全画面表示に切り替わったときに何も表示したくない場合は、代わりにビデオ プレーヤー用の新しい Spark スキンを作成する必要があります。通常、スキン パーツを直接変更しても意味がありません。

Flash Builder で Player の新しいスキンを作成するには、[ファイル] > [新規] > [MXML-Skin]に移動します。次に、いわゆるホスト コンポーネントとして VideoPlayer クラスを選択し、新しいスキンに名前を付けます。デフォルトでは、Flash Builder は標準スキン クラスのコンテンツをカスタム スキンにコピーするため、機能するスキンが取得されます。

Flash Builder を使用しない場合は、Flex SDK インストール フォルダー/frameworks/projects/spark/src/spark/skins/spark/の次のディレクトリに移動し、 VideoPlayerSkin.mxmlファイルを開くことができます。コンテンツ全体を独自のスキン クラスにコピーし、変更を開始します。

変更用にスキンを設定したら、プレーヤーにスキンを使用するように指示する必要もあります。これは、いくつかの CSS 情報を追加することで実行できます。

s|VideoPlayer
{
    skinClass: ClassReference("com.company.skins.MyVideoPlayerSkin");
}

これで、スキン パーツを変更してスキンを変更できますplayerControls。これはスキンの MXML ファイルの途中にあります (SDK バージョン 4.5.1 では 131 行目)。全画面で要素を非表示にするには、その属性にplayerControls追加します。visible.fullScreenStates="false"これで問題が解決するはずです。

于 2012-08-30T13:35:29.447 に答える