其他分享
首页 > 其他分享> > Android沉浸模式转换

Android沉浸模式转换

作者:互联网

我有一个使用沉浸式模式进行所有活动的Android应用-因此它是一个全屏的应用.

我有一个BaseActivity类,所有其他活动都从该类扩展.在本活动中,我将调用以下内容启用全屏/沉浸式

HelmiBlank活动:

private boolean apiLowerImmersive = false;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

   if(Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN) {
        apiLowerImmersive = true;
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
    }

}


@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
@Override
public void onWindowFocusChanged(boolean hasFocus) {
    super.onWindowFocusChanged(hasFocus);

  if(hasFocus && !apiLowerImmersive ) {
        getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                | View.SYSTEM_UI_FLAG_FULLSCREEN
                | View.SYSTEM_UI_FLAG_IMMERSIVE);
    }
}

在活动中效果很好,问题在于:当打开一个新活动(按意图)时,动作栏/标题栏会显示一小段时间,然后再次隐藏-看起来有点滞后.

该应用程序还有一个主题:
styles.xml:

<style name="FullscreenTheme" parent="android:Theme.Holo.Light">
    <item name="android:windowFullscreen">true</item>
    <item name="android:windowActionBar">false</item>
    <item name="android:windowNoTitle">true</item>
</style>

我也尝试应用android:Theme.Holo.Light.NoActionBar-过渡期间未成功.
我在stackoverflow上找不到任何东西(顺便说一句,这是一个很棒的社区,并为我解决了许多问题),或者在Internet上的其他任何地方,我都将不胜感激.

解决方法:

如果将此代码段放入onCreate()方法中,则活动将在已隐藏条形的情况下打开.

getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                | View.SYSTEM_UI_FLAG_FULLSCREEN
                | View.SYSTEM_UI_FLAG_IMMERSIVE);

您还可以为较旧的SDK添加条件.我在此设置中遇到的唯一问题是,一旦我向下滑动以显示条,它们便不会再次隐藏…

标签:android-transitions,android-fullscreen,android
来源: https://codeday.me/bug/20191121/2048091.html