在做应用的时候,很多时候是不需要系统自带的标题栏的,而是自己去实现标题栏,这就要去掉系统的标题栏,下面总结了三种方法。全屏也是一样的道理,也总结了实现的三种方法。
(一)去除标题栏
1、方法1
在Activity的onCreate方法中:
requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏
//注意这句一定要写在setContentView()方法的前面,不然会报错的
但是这种方法的缺陷是,因为在onCreate方法中才去掉标题栏,所以在这之前会发现标题栏还是会一闪而过,去的不彻底,那么用下面两种方法就能够避免这个问题。
2、方法2
在AndroidManifest.xml文件中定义:
<application
android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar">
这样就会把整个应用的每个界面都去掉标题栏,如果只是想把某些活动去掉标题栏,那么把android:theme="@android:style/Theme.NoTitleBar"属性放在Activity标签即可。
3、方法3(推荐,便于维护和扩展)
(1)先在styles.xml中定义名为NoTitle的style:
<style name="AppBaseTheme" parent="android:Theme.Light"> </style>
<style name="NoTitle" parent="AppBaseTheme">
<item name="android:windowNoTitle">true</item>
</style>
(2)在AndroidManifest.xml文件中定义:
<activity
android:name="XXX"
android:label="@string/app_name"
android:theme="@style/NoTitle">
(二)全屏
和去除标题栏的三种方法类似,全屏也有三种方法.
1、方法1
在Activity的onCreate方法中:
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
2、方法2
在AndroidManifest.xml文件中定义:
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
3、方法3(推荐)
(1)styles.xml文件:
<!-- 全屏style -->
<style name="FullScreen" parent="AppBaseTheme">
<item name="android:windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
</style>
(2)AndroidManifest.xml:
<activity
android:name="XXX"
android:theme="@style/FullScreen">
随机推荐
-
ng-selected ng-change
<!DOCTYPE HTML><html ng-app="myApp"><head><meta http-equiv="Cont ...
-
[转] dpkg-deb命令
点击此处阅读原文 function addLink() { var body_element = document.getElementsByTagName('body')[0]; var selec ...
-
【MySql】赶集网mysql开发36条军规
[MySql]赶集网mysql开发36条军规 2012-05-14 14:02:33 分类: Linux 写在前面的话: 总是在灾难发生后,才想起容灾的重要性: 总是在吃过亏后,才记得曾经有人提醒 ...
-
sql语句中 limi的用法
SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset 使用查询语句时需要返回前几条或者中间的某几行数据时可以用到limit 例如 ...
-
如何高效的编写Verlog HDL——菜鸟版
工欲善其事.必先利其器!要想高效的编写verilog没有一个好的编辑器可不行,所以我这里推荐两款十分好用的编辑器Notepad++和Gvim,这两款编辑器由于其强大的添加插件的功能,所以深受代码工作者 ...
-
Linux下I/O多路转接之select --fd_set
fd_set 你终于还是来了,能看到这个标题进来的,我想,你一定是和我遇到了一样的问题,一样的疑惑,接下来几个小时,我一定竭尽全力,写出我想说的,希望也正是你所需要的: 关于Linux下I/O多路转接 ...
-
Nginx详解二十二:Nginx深度学习篇之Lua解释器安装及基础语法
解释器 Lua:Lua是一个简洁.轻量.可扩展的脚本语言 Nginx+Lua优势充分的结合Nginx的并发处理epoll优势的Lua的轻量实现简单的功能切高并发的场景 安装Lua 1.安装解释器:yu ...
-
centos7 关闭防护墙
centos6 里面的默认防火墙 是 iptables, 所有 使用 service iptables stop 就可以停止防火墙了. 但是 centos7 里面的 防火墙 叫做 firewal ...
-
Java知多少(17)强调一下编程风格
讲完了Java的基础语法,大家就可以编写简单的程序代码了,这里有必要强调一下编程风格. 代码风格虽然不影响程序的运行,但对程序的可读性却非常重要.自己编写的程序要让别人看懂,首先在排版方面要非常注意. ...
-
Centos 创建 docker项目
从gitlab上下载一个docker-compose.yml文件. wget -o docker-compose.yml \ https://raw.githubusercontent.com/sam ...