Andriod 全屏处置(视频播放器)

Andriod 全屏处理(视频播放器)

1. 简介

在Android应用程序中,有些需要全屏, 不包含状态栏(System Status Bar), 标题栏( ActionBar), 以及导航栏(Navigation Bar), 这种状态即是Google API 中所定义的Immpresion模式.这种模式常常被游戏应用所采用.

此外还有一些应用需要在全屏模式和非全屏模式下切换, 比如视频播放器.


2. UI Flag

(1) 显示StatusBar and Navigation Bar

        mShowFlags =
                View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                        | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                        | View.SYSTEM_UI_FLAG_LAYOUT_STABLE;
      mAnchorView.setSystemUiVisibility(mShowFlags);


(2) 隐藏StatusBar and Navigation Bar

        mHideFlags = View.SYSTEM_UI_FLAG_LOW_PROFILE
                | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                | View.SYSTEM_UI_FLAG_FULLSCREEN
                | View.SYSTEM_UI_FLAG_IMMERSIVE
                | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
       mAnchorView.setSystemUiVisibility(mHideFlags);

3. ActionBar OverLay

将ActionBar设置为:浮于View的上层

        requestWindowFeature(Window.FEATURE_ACTION_BAR);
        requestWindowFeature(Window.FEATURE_ACTION_BAR_OVERLAY);