实 现Android API 19(Android 4.4)及其以上的设备,隐藏下端虚拟按键或上端系统状态栏,以及所有Android版本隐藏系统上端状态栏。其中java代码的一种使用方法是,写一个BaseActivity,将代码放在onCreate()方法里,让有此需求的Activity继承它。网上找到的API 18及其以下的效果都不太理想,最近开发的至少都是API 21以上的,所以没有再去考虑API 18 以下的了。
1.隐藏下端虚拟按键(java代码)
private void hideUIButton() {
if (Build.VERSION.SDK_INT >= 19) {
View decorView = getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY ;
decorView.setSystemUiVisibility(uiOptions);
}
}
2.隐藏上端系统状态栏(java代码)
private void hideUIStateColum() {
if (Build.VERSION.SDK_INT >= 19) {
View decorView = getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
decorView.setSystemUiVisibility(uiOptions);
}
}
3.隐藏上端系统状态栏和下端虚拟按键(java代码)
private void fullWindows(){
if (Build.VERSION.SDK_INT >= 19) {
//for new api versions.
View decorView = getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
|View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
decorView.setSystemUiVisibility(uiOptions);
}
}
4.隐藏上端系统状态栏(适用于所有Android版本)(xml文件)
修改主题,即src\main\res\values\styles.xml文件的主题,添加以下子项:
<item name="android:windowFullscreen">true</item>
一个在自动生成的styles.xml文件中添加的例子,styles.xml中的代码:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:windowFullscreen">true</item>
</style>
</resources>