Android app设置全屏模式

短命女 2021-06-24 14:35 815阅读 0赞

Android中,为APP设置全屏模式,主要有如下几种方式:

在manifest中设置

在项目中找到AndroidManifest.xml配置文件,找到Activity所在的节点,添加theme。

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.name.test" android:versionCode="1" android:versionName="1.0">
  3. <uses-sdk android:minSdkVersion="8" />
  4. <application android:icon="@drawable/icon" android:label="@string/app_name">
  5. <activity android:name=".MainActivity" android:label="@string/app_name" android:screenOrientation="landscape" android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
  6. <!--换成android:theme="@android:style/Theme.NoTitleBar" 亦可-->
  7. <intent-filter>
  8. <action android:name="android.intent.action.MAIN" />
  9. <category android:name="android.intent.category.LAUNCHER" />
  10. </intent-filter>
  11. </activity>
  12. </application>
  13. </manifest>

其中,android:screenOrientation=”landscape”是修改Android手机的屏幕方向
android:theme=”@android:style/Theme.NoTitleBar.Fullscreen”是设置主题,即没有标题并且全屏

在MainActivity中设置

在onCreate入口函数中通过setTheme()方法设置主题,setRequestedOrientation()方法设置屏幕方向。

  1. public void onCreate(Bundle savedInstanceState){
  2. setTheme(style.Theme_Black_NoTitleBar_Fullscreen);
  3. setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
  4. super.onCreate(savedInstanceState);
  5. setContentView(R.layout.main);
  6. }

另外,也可以使用requestWindowFeature()设置是否显示标题,setFlags()方法设置全屏。但此方法明显能看到title bar显示了之后又消失了,用户体验不好。

  1. requestWindowFeature(Window.FEATURE_NO_TITLE);
  2. getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
  3. WindowManager.LayoutParams.FLAG_FULLSCREEN);
  4. setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

配置Style + Manifest

首先,在res/values文件夹下创建或修改styles.xml文件

  1. <?xmlversion="1.0" encoding="utf-8"?>
  2. <resources>
  3. <style name="NoTitle" parent="android:Theme"> <item name="android:windowNoTitle">true</item> </style>
  4. </resources>

然后,修改AndroidManifest.xml

  1. <activity android:label="@string/app_name" android:theme="@style/NoTitle" />

参考

Android设置全屏模式的方式

发表评论

表情:
评论列表 (有 0 条评论,815人围观)

还没有评论,来说两句吧...

相关阅读