Android中,为APP设置全屏模式,主要有如下几种方式:
在manifest中设置
在项目中找到AndroidManifest.xml配置文件,找到Activity所在的节点,添加theme。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.name.test"
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=".MainActivity"
android:label="@string/app_name" android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
<!--换成android:theme="@android:style/Theme.NoTitleBar" 亦可-->
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
其中,android:screenOrientation=”landscape”是修改Android手机的屏幕方向
android:theme=”@android:style/Theme.NoTitleBar.Fullscreen”是设置主题,即没有标题并且全屏
在MainActivity中设置
在onCreate入口函数中通过setTheme()方法设置主题,setRequestedOrientation()方法设置屏幕方向。
public void onCreate(Bundle savedInstanceState){
setTheme(style.Theme_Black_NoTitleBar_Fullscreen);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
- 1
- 2
- 3
- 4
- 5
- 6
另外,也可以使用requestWindowFeature()设置是否显示标题,setFlags()方法设置全屏。但此方法明显能看到title bar显示了之后又消失了,用户体验不好。
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
- 1
- 2
- 3
- 4
配置Style + Manifest
首先,在res/values文件夹下创建或修改styles.xml文件
<?xmlversion="1.0" encoding="utf-8"?>
<resources>
<style name="NoTitle" parent="android:Theme">
<item name="android:windowNoTitle">true</item>
</style>
</resources>
- 1
- 2
- 3
- 4
- 5
- 6
然后,修改AndroidManifest.xml
<activity
android:label="@string/app_name"
android:theme="@style/NoTitle" />
Android中,为APP设置全屏模式,主要有如下几种方式:
在manifest中设置
在项目中找到AndroidManifest.xml配置文件,找到Activity所在的节点,添加theme。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.name.test"
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=".MainActivity"
android:label="@string/app_name" android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
<!--换成android:theme="@android:style/Theme.NoTitleBar" 亦可-->
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
其中,android:screenOrientation=”landscape”是修改Android手机的屏幕方向
android:theme=”@android:style/Theme.NoTitleBar.Fullscreen”是设置主题,即没有标题并且全屏
在MainActivity中设置
在onCreate入口函数中通过setTheme()方法设置主题,setRequestedOrientation()方法设置屏幕方向。
public void onCreate(Bundle savedInstanceState){
setTheme(style.Theme_Black_NoTitleBar_Fullscreen);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
- 1
- 2
- 3
- 4
- 5
- 6
另外,也可以使用requestWindowFeature()设置是否显示标题,setFlags()方法设置全屏。但此方法明显能看到title bar显示了之后又消失了,用户体验不好。
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
- 1
- 2
- 3
- 4
配置Style + Manifest
首先,在res/values文件夹下创建或修改styles.xml文件
<?xmlversion="1.0" encoding="utf-8"?>
<resources>
<style name="NoTitle" parent="android:Theme">
<item name="android:windowNoTitle">true</item>
</style>
</resources>
- 1
- 2
- 3
- 4
- 5
- 6
然后,修改AndroidManifest.xml
<activity
android:label="@string/app_name"
android:theme="@style/NoTitle" />