1、需求
最近做的几个项目都是在pad或TV上的,而且都要求全屏显示(就是不用显示状态栏和ActionBar)
2、清单文件中的设置
整个应用需要设置NoActionBar,每个Activity还需要设置NoTitle_FullScreen(这个是自己定义的style)
3、自定义NoTitle_FullScreen
在styles.xml添加一下代码,并在清单文件中引用。
<style name="AppTheme.NoTitle_FullScreen"> <!--自定义主题名称-->
<item name="android:windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
</style>
4、实际使用中的问题(偶发)
我在清单文件中已经设置了android:theme="@style/Theme.AppCompat.Light.NoActionBar,但是实际界面上海市显示了ActionBar
最后我发现是styles.xml中没有修改过了,
将AppTheme修改为NoActionBar就可以了,<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
5、补充
偶尔会出现,自定义dialog弹出时还有默认的背景色,可以用下面的字段样式修改。
<style name="AlertDialog" parent="Theme.AppCompat.Light.Dialog">
<!-- 这里设置背景为透明,为了隐藏边框 -->
<item name="android:windowBackground">@color/noColor</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
</style>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#3F51B5</color>
<color name="colorPrimaryDark">#303F9F</color>
<color name="colorAccent">#FF4081</color>
<color name="noColor">#00000000</color>
</resources>