apache-flex 在Flex中使用全屏中的视频从全屏中退出最小化整个应用程序

lyr7nygr  于 2022-10-31  发布在  Apache
关注(0)|答案(2)|浏览(192)

我有一个应用程序打算在全屏模式下运行。为了防止它脱离全屏模式,我做了:

protected function windowedapplication_preinitializeHandler(event:FlexEvent):void
{
     nativeWindow.stage.addEventListener(KeyboardEvent.KEY_DOWN, onKeyDown);
     nativeWindow.stage.displayState = StageDisplayState.FULL_SCREEN_INTERACTIVE;
}

protected function onKeyDown(event:KeyboardEvent):void
{
   if (event.keyCode == 27)
   {
      event.preventDefault();
    }
}

这可以防止应用程序退出全屏,但我的应用程序有一个视频播放器,可以选择全屏播放视频,当我按下esc键时,整个应用程序和视频都会变小。
提前感谢!

sg24os4d

sg24os4d1#

您无法阻止按ESC键退出全屏模式这是安全问题

jk9hmnmh

jk9hmnmh2#

您可以侦听FullScreenEvent,并将stage.displayState设定为在传送FullScreenEvent.FULL_SCREEN时返回全屏幕。
这样,即使用户在视频播放器中单击全屏按钮退出全屏模式,应用程序也会变回全屏。

private function onApplicationComplete(event:Event):void{

      stage.displayState = StageDisplayState.FULL_SCREEN_INTERACTIVE;
      stage.addEventListener(FullScreenEvent.FULL_SCREEN, onFullScreenChange);

}

private function onFullScreenChange(event:FullScreenEvent):void{

      stage.displayState = StageDisplayState.FULL_SCREEN_INTERACTIVE;
}

相关问题