Android app设置全屏模式
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>
其中,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);
}
另外,也可以使用requestWindowFeature()设置是否显示标题,setFlags()方法设置全屏。但此方法明显能看到title bar显示了之后又消失了,用户体验不好。
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
配置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>
然后,修改AndroidManifest.xml
<activity android:label="@string/app_name" android:theme="@style/NoTitle" />
参考
Android设置全屏模式的方式
还没有评论,来说两句吧...