在实际的应用程序开发中,我们有时需要把 Activity 设置成全屏显示,一般情况下,可以通过两种方式来设置全屏显示效果:
其一,通过在代码中可以设置,
其二,通过manifest配置文件来设置全屏。
其一:在代码onCreate里面setContentView之前设置(如下)
1 2 3 4 5 6 7 8 9 10 | view plaincopy to clipboardprint? public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //取消标题 requestWindowFeature(Window.FEATURE_NO_TITLE); //取消状态栏 getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.main); } |
但要注意的是:在代码中设置的话,设置无标题和设置全屏的两段代码要放置在 setContentView(R.layout.main)(界面渲染,完成了再全屏是不行的)这段代码的前面。要不然会报错。
其二:在manifest配置文件中设置
第一种方法
①在res/values 目录创建个theme.xml文件(用来放样式)
1 2 3 4 5 6 7 8 | <?xml version="1.0" encoding="utf-8"?> <resources> <!-- name 是Style的名称,parent 继承那个父类样式 --> <style name="theme_fullScreen"parent="android:Theme.Black"> <item name="android:windowNoTitle">true</item> <!--设置无标题 --> <item name="android:windowFullscreen">?android:windowNoTitle</item> <!--是否填充慢屏幕,引用android:windowNoTitle 的值 ?android:windowNoTitle,取决于android:windowNoTitle的值--> </style> </resources> |
②<activityandroid:name=".login.LoginActivity"android:theme="@style/theme_fullScreen"/>
第二种方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.andyidea" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="8"/> <application android:icon="@drawable/icon"android:label="@string/app_name"> <activity android:name=".login.LoginActivity" 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> |
只去程序标题栏 设置整个应用 no title
第三种:这种在一般的应用中不常用,就是在res/values目录下面新建一个style.xml的文件例如:
1 | <?xml version="1.0" encoding="UTF-8" ?> <resources> <style name="theme_notitle"> <item name="android:windowNoTitle">true</item> </style> </resources> |
这样,我们就自定义了一个style,就相当于一个主题,然后在AndroidManifest.xml文件中定义
1 | <application android:icon="@drawable/icon"android:label="@string/app_name" android:theme="@style/theme_notitle"> |
这样也可以达到去掉标题栏的效果。
(补充一条)
去掉所有Activity页面的头部,我们应该怎么做呢?
下面我来告诉你,在
android:theme="@style/AppTheme"
<item name="windowNoTitle">true</item>//添加在@style/AppTheme源码里面,我们所有的Activity就会好看些了。
Android开发如何去除标题栏title? 1.0 在java代码里去掉->requestWindowFeature(Window.FEATURE_NO_TITLE);(只改变了当前所在Activity的状态,且无法去掉状态栏) 注意:在此方法setContentView(R.layout.activity_splash); 之前加入. 2.0在清单文件的application">"中android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"配置属性,可以改变整个应用的状态栏和通知栏的显示情况 3.在清单文件的Activity">"中android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"配置属性,只能改变一个页面的状态栏和通知栏的显示情况. 注意:就是在清单文件配置主题,该Activity必须继承的是Activity,如果是studio默认创建的Activity,继承的父类是V7包下的AppCompatActivity*/
以上给大家总结了三种android去掉状态栏的方法,希望本文所述能够帮助到大家。