2012-08-30 34 views
0

我有如下:在的VideoPlayer FLEX4 我可以刪除playerControls有:video1.playerControls.visible =假flex:如何在全屏中刪除playcontrols?

但我想在全屏模式下刪除:

我試着用:

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

沒有效果! Infact一旦進入全屏模式,似乎我根本無法控制播放器:例如:我的水印標誌不再可見,我無法使按鈕不可見。

ANY線索?

問候

+0

爲什麼要刪除控件?據我所知,Adobe非常沮喪。 –

回答

2

由於the documentation of spark.components.VideoPlayer says hereVideoPlayer.playerControls是皮膚的一部分。 playerControls皮膚部分的目的是確定當您在全屏幕中不以任何方式與視頻播放器進行交互時,哪些控件將淡出。所以玩家幾乎可以像所有玩家一樣行事:如果用戶什麼都不做,它會隱藏控件。

也許這是你試圖(重新)實施的行爲。但是,如果您想在播放器切換到全屏時完全不顯示任何內容,則應該爲視頻播放器創建一個新的Spark Skin。通常直接更換皮膚部件是沒有意義的,就像您一樣。

要在Flash Builder中爲播放器創建新外觀,您可以轉至文件>新建> MXML-Skin。 然後,您選擇VideoPlayer類作爲所謂的主機組件,併爲您的新外觀命名。默認情況下,Flash Builder會將標準外觀類的內容複製到您的自定義外觀,以便獲得工作外觀。

如果你不使用Flash Builder,你可以去到以下目錄在Flex SDK安裝文件夾/框架/項目/火花/ src目錄/火花/毛皮/火花/並打開VideoPlayerSkin。 mxml文件。將整個內容複製到您自己的皮膚類並開始修改它。

當你設置你的皮膚進行改變時,你還需要告訴玩家使用你的皮膚。這可以通過添加一些CSS信息來完成:

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

現在,你可以通過修改playerControls皮膚部分改變你的皮膚。它位於皮膚MXML文件的中間位置(在SDK版本4.5.1中,位於第131行)。 要全屏隱藏playerControls元素,請將visible.fullScreenStates="false"添加到其屬性。這應該可以解決你的問題。