开发 Android 的时候,用了网上很多方法,都没有办法隐藏屏幕底部的导航栏(Navigation Bar)。后来在研究 AndroidBootstrapTest 的时候,无意中发现 AndroidManifest.xml 文件的 uses-sdk 标签对导航栏的隐藏与否至关重要。在做了隐藏标题栏的设置之后,uses-sdk 标签如果是下面这样设置,则可以正常隐藏导航栏:
<uses-sdk android:minSdkVersion="9" android:targetSdkVersion="21" />
如下是以下设置,则隐藏不了:
<uses-sdk android:minSdkVersion="9" />
所以 android:targetSdkVersion 是个很关键的属性,不是可有可无的。
要隐藏标题栏,可先在 values/styles.xml 文件里添加如下样式:
<resources>
<!--
Base application theme, dependent on API level. This theme is replaced
by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
-->
<style name="AppBaseTheme" parent="android:Theme.Light">
<!--
Theme customizations available in newer API levels can go in
res/values-vXX/styles.xml, while customizations related to
backward-compatibility can go here.
-->
</style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
<item name="android:windowNoTitle">true</item>
</style>
<style name="test_style">
<item name="android:textSize">32sp</item>
</style>
</resources>
然后在 AndroidManifest.xml 文件的 application 标题应用样式:
<application ... android:theme="@style/AppTheme" >...</application>