android 开发 如何去掉手机的上边的状态栏
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android 开发 如何去掉手机的上边的状态栏相关的知识,希望对你有一定的参考价值。
在开发中经常需要把应用设置为全屏,这需要去掉标题栏和状态栏;一般有两种方法,一是在代码中设置,另一种方法是在配置文件里设置。一、在代码中设置:
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
//去除title
requestWindowFeature(Window.FEATURE_NO_TITLE);
//去掉Activity上面的状态栏
getWindow().setFlags(WindowManager.LayoutParams. FLAG_FULLSCREEN , WindowManager.LayoutParams. FLAG_FULLSCREEN);
setContentView(R.layout.main);
其中起主要作用的两个语句:
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
//隐去电池等图标和一切修饰部分(状态栏部分)
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
//隐去标题栏(程序的名字)
在这里要强调一点,设置全屏的俩段代码必须在setContentView(R.layout.main)之前,不然会报错.
二、在配置文件里设置
(关键代码:android:theme="@android:style/Theme.NoTitleBar.Fullscreen",如果想只是去除标题栏就后面不用加Fullscreen了,另外,如果想要整个应用都去除标题栏和状态栏,就把这句代码加到<application..标签里面,如果只是想某个activity起作用,这句代码就加到相应的activity上):
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.demo"
android:versionCode="1"
android:versionName="1.0">
<application android:
icon="@drawable/icon"
android:label="@string/app_name">
<activity android:name=".OpenGl_Lesson1"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
这里主要用到的Theme如下:
android:theme="@android:style/Theme.NoTitleBar" 隐去标题栏
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 隐去状态栏 参考技术A 1.在代码里实现
[java] view plain copy
this.requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏
记住:这句代码要写在setContentView()前面。
2.在清单文件(manifest.xml)里面实现
[java] view plain copy
<application android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar">
这样用可以将整个应用设置成无标题栏,如果只需要在一个Activity设置成一个无标题栏的形式,只要把上面的第三行代码写到某一个Activity里面就可以了。
3.在style.xml文件里定义
[html] view plain copy
<?xml version="1.0" encoding="UTF-8" ?>
<resources>
<style name="notitle">
<item name="android:windowNoTitle">true</item>
</style>
</resources>
然后面manifest.xml中引用就可以了,这种方法稍麻烦了些。
[html] view plain copy
<application android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@style/notitle">
其实可以看得出来,第二种方法和第三种方法实质是一样的,只不过第二种方法调用的是系统定义好的style.xml文件,而第三种方法则是在自己的应用里定义style.xml,然后再自己再调用,其实道理是一样的,第三种方法做起来更有成就感。
如何在Android中实现全屏,去掉标题栏效果
参考技术A android全屏的效果如下图,整个应用占据手机屏幕(状态栏看不到)要实现全屏效果,可以配置activity的主题样式为theme.notitlebar.fullscreen
也可以在activity的oncreate方法中加入下面代码(注意要在setcontentview之前)
this.requestwindowfeature(window.feature_no_title);//去掉标题栏
this.getwindow().setflags(windowmanager.layoutparams.flag_fullscreen, windowmanager.layoutparams.flag_fullscreen);//去掉信息栏
而去掉标题栏效果如下,状态栏是看得到的
要实现全屏效果,可以配置activity的主题样式为theme.notitlebar
或者加入代码
this.requestwindowfeature(window.feature_no_title);
以上是关于android 开发 如何去掉手机的上边的状态栏的主要内容,如果未能解决你的问题,请参考以下文章