Android中去掉标题栏或全屏的方法

时间:2021-10-17 19:27:44

一、去掉标题栏的方法有如下三种:

1.在代码当中:

如:

    @Override
protected void onCreate(Bundle savedInstanceState) {
this.requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

}
注意:下面一行代码必须在setContentView(R.layout.activity_main);之前<pre name="code" class="java">this.requestWindowFeature(Window.FEATURE_NO_TITLE);//去掉标题栏
 
用这种方式在程序启动的一瞬间,标题栏还是会出现一小会再消失,这是一个不好的地方。
2.在AndroidManifest.xml文件中定义

 
 <application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar" >
<activity
android:name=".MainActivity"
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>
 
关键代码:<pre name="code" class="java">android:theme="@android:style/Theme.NoTitleBar"
 

注意:如果是在<application></application>里面定义则对整个程序都去掉标题栏,如果是在<activity></activity>里面定义则是针对某个页面去掉标题栏
 
3.利用style文件来定义一个主题,并应用这个主题来实现去掉标题栏,在res/values文件夹下新建<span style="font-family: Arial, Helvetica, sans-serif;">style.xml文件并添加如下代码:</span>
<span style="font-family:Arial, Helvetica, sans-serif;"></span><pre name="code" class="java"><?xml version="1.0" encoding="utf-8"?><resources>    <style name="notitle">        <item name="android:windowNoTitle">true</item>    </style></resources>
最后在AndroidManifest.xml应用:
 
<span style="font-family:Arial, Helvetica, sans-serif;"></span><pre name="code" class="html"> <application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/notitle" >
或者可以直接在res/values文件夹下面styles.xml文件中添加如下代码
 
<span style="font-family:Arial, Helvetica, sans-serif;"></span><pre name="code" class="java"> <style name="notitle">
<item name="android:windowNoTitle">true</item>
</style>
最后在AndroidManifest.xml应用也可以
 
<span style="font-family:Arial, Helvetica, sans-serif;">效果如下:</span>
<span style="font-family:Arial, Helvetica, sans-serif;"><img src="http://img.blog.csdn.net/20160403093102305?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" /></span>
<span style="font-family:Arial, Helvetica, sans-serif;">在上面的三种方法当中,第三种方法比较好,比较容易修改,更为灵活。</span>
<span style="font-family:Arial, Helvetica, sans-serif;"><strong><span style="font-size:18px;">二、全屏的方法</span></strong>1.在代码中添加</span>
<span style="font-family:Arial, Helvetica, sans-serif;"></span><pre name="code" class="java">this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
上面一行代码不需要在setContentView(R.layout.activity_main);之前
 
<span style="font-family:Arial, Helvetica, sans-serif;">上面一行代码可以实现全屏但是无法去掉标题栏,可以和上文第一点第一个小点结合实现全屏无标题栏显示

2.在AndroidManifest.xml定义</span>
<span style="font-family:Arial, Helvetica, sans-serif;"></span><pre name="code" class="java">android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
3.自定义一个style文件或者在styles.xml文件中添加一个style属性
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="fullscreen">
<item name="android:windowFullscreen">true</item>
</style>
</resources>