1.让状态栏透明
(1)Java代码修改
if(VERSION.SDK_INT >= VERSION_CODES.KITKAT) {
//透明状态栏
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
//透明导航栏
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
}
(2)Theme文件修改
在Style中加入:
<item name="android:windowTranslucentStatus">true</item>
<item name="android:windowTranslucentNavigation">true</item>
但是以上方法都会造成内容移动到状态栏下面去,这不是我们想要的。
在XML文件中加上:
android:fitsSystemWindows="true"
android:clipToPadding="true"
发现内容是移动下来了,但是导航栏变为灰白色,这是因为导航栏是透明状态,而下面又没有颜色导致的。
解决方法:
http://www.jianshu.com/p/34a8b40b9308
注意!在SlidingMenu中要加入这句才有效果:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
另外,在5.0之后因为加了上面的代码会导致界面和NavigationBar重合,解决办法:
在Theme文件中加上:
<item name="android:windowDrawsSystemBarBackgrounds">false</item>
2.让导航栏消失(全屏显示)
在Theme文件中添加:
<item name="android:windowFullscreen">true</item>