您的位置:首页 > 移动开发 > Android开发

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

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

方式一:编码方式



@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);
}




方式二:修改
AndroidManifest.xml
:

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


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



所以这里theme应该采用android:theme=@style/Theme.AppCompat.Light.NoActionBar”,这个只能隐藏ActionBar

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




<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>





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: