|
1 | 1 | package io.pslab.activity; |
2 | 2 |
|
| 3 | +import android.annotation.SuppressLint; |
3 | 4 | import android.content.Intent; |
4 | | -import android.os.Build; |
5 | 5 | import android.os.Bundle; |
6 | 6 | import android.view.Menu; |
7 | 7 | import android.view.MenuItem; |
@@ -73,19 +73,36 @@ protected void onResume() { |
73 | 73 | } |
74 | 74 |
|
75 | 75 | private void removeStatusBar() { |
76 | | - if (Build.VERSION.SDK_INT < 16) { |
77 | | - getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, |
78 | | - WindowManager.LayoutParams.FLAG_FULLSCREEN); |
79 | | - } else { |
80 | | - View decorView = getWindow().getDecorView(); |
81 | | - |
82 | | - decorView.setSystemUiVisibility((View.SYSTEM_UI_FLAG_LAYOUT_STABLE |
83 | | - | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION |
84 | | - | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN |
85 | | - | View.SYSTEM_UI_FLAG_FULLSCREEN |
86 | | - | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION |
87 | | - | View.SYSTEM_UI_FLAG_FULLSCREEN |
88 | | - | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY)); |
| 76 | + final int flags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE |
| 77 | + | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION |
| 78 | + | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN |
| 79 | + | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION |
| 80 | + | View.SYSTEM_UI_FLAG_FULLSCREEN |
| 81 | + | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; |
| 82 | + getWindow().getDecorView().setSystemUiVisibility(flags); |
| 83 | + final View decorView = getWindow().getDecorView(); |
| 84 | + decorView.setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() { |
| 85 | + @Override |
| 86 | + public void onSystemUiVisibilityChange(int i) { |
| 87 | + if ((i & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0) { |
| 88 | + decorView.setSystemUiVisibility(flags); |
| 89 | + } |
| 90 | + } |
| 91 | + }); |
| 92 | + } |
| 93 | + |
| 94 | + @SuppressLint("NewApi") |
| 95 | + @Override |
| 96 | + public void onWindowFocusChanged(boolean hasFocus) { |
| 97 | + super.onWindowFocusChanged(hasFocus); |
| 98 | + if (hasFocus) { |
| 99 | + getWindow().getDecorView().setSystemUiVisibility( |
| 100 | + View.SYSTEM_UI_FLAG_LAYOUT_STABLE |
| 101 | + | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION |
| 102 | + | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN |
| 103 | + | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION |
| 104 | + | View.SYSTEM_UI_FLAG_FULLSCREEN |
| 105 | + | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); |
89 | 106 | } |
90 | 107 | } |
91 | 108 |
|
|
0 commit comments