Android 设置全屏样式主题的总结

时间:2024-03-16 08:02:57
### 业务场景 为了实现启动页可以占满手机页面全屏的样式,故我们应该去处理启动页面的配置。但是这种效果会有一个渐变的效果。启动时图片的大小和启动后图片的大小不一致 转载至:http://www.cnblogs.com/liaojie970/p/5815369.html

方式一:编码方式

Android 设置全屏样式主题的总结
 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);//remove title bar  即隐藏标题栏
     getSupportActionBar().hide();// 隐藏ActionBar
//此处有可能会有空指针异常,并且Activity或者AppCompatActivity时要相互注意 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);//remove notification bar 即全屏 setContentView(R.layout.activity_main); }
Android 设置全屏样式主题的总结


方式二:修改AndroidManifest.xml:

<activity android:name=".MainActivity"
          android:label="@string/app_name"
          android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen">

但是这种方式异动是程序总是崩溃
原因,升级后theme是由appcompat_v7管理

Android 设置全屏样式主题的总结

所以这里theme应该采用android:[email protected]/Theme.AppCompat.Light.NoActionBar”,这个只能隐藏ActionBar

如果想连通知栏也隐藏,可在styles.xml中定义如下样式,然后再在AndroidManifest.xml中的Application或者Activity上使用

Android 设置全屏样式主题的总结
    <style name="Theme.AppCompat.Light.NoActionBar.FullScreen" parent="@style/Theme.AppCompat.Light">
        <item name="android:windowNoTitle">true</item>//无标题
        <item name="android:windowActionBar">false</item>//无ActionBar
        <item name="android:windowFullscreen">true</item>//全屏即无通知栏
        <item name="android:windowContentOverlay">@null</item>//是否有遮盖
    </style>
Android 设置全屏样式主题的总结

Android 设置全屏样式主题的总结