我已经从我的代码中删除了标题栏,但现在我希望 activity 是全屏的,有人可以建议我如何在 android studio 中做到这一点吗?
I have removed the titlebar from my code but now i want the activity to be fullscreen, can someone suggest me how to do that in android studio?
我的AndroidManifest.xml代码如下:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.chintan.myapplication">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
我的MainActivity.java代码如下:
package com.example.chintan.myapplication;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
我的应用程序看起来像这样。我希望 "Armour" 写在屏幕顶部通知栏正下方。
App looks like this
您可以尝试这样的操作:
// Make fullscreen
int UI_OPTIONS = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION;
getWindow().getDecorView().setSystemUiVisibility(UI_OPTIONS);
我用它来让我的应用程序全屏显示,而且效果非常好。它隐藏了导航栏,只有在您靠近设备屏幕底部向上滑动时才会出现
使用这个简单的功能,摆脱所有问题
public void setFullscreen(boolean fullscreen) {
WindowManager.LayoutParams attrs = getWindow().getAttributes();
if (fullscreen) {
attrs.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN;
AdHelper.bannerAd.setVisibility(View.GONE);
} else {
attrs.flags &= ~WindowManager.LayoutParams.FLAG_FULLSCREEN;
if (AdHelper.isBannerLoaded)
AdHelper.bannerAd.setVisibility(View.VISIBLE);
}
getWindow().setAttributes(attrs);
}
只需将参数传递给 true
全屏和 false
退出全屏。而已。
如下更改您的 AppTheme
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
</style>
我看到你的应用图片,你没有从你的应用主题中删除操作栏。
使用 Theme.AppCompat.Light.NoActionBar 主题作为非操作栏。然后,如果您想在应用的任何 activity 中使用操作栏,请使用 ToolBar .
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
<item name="android:windowIsTranslucent">true</item>
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
希望对您有所帮助。
1- 在 styles.xml
中创建一个 FullScreenTheme
<style name="FullScreenTheme" parent="your parent them"> // for example use this parent them --> Theme.AppCompat.Light.DarkActionBar
<item name="windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
</style>
2-在menefist中添加主题
<activity
android:name=".MainActivity"
android:theme="@style/FullScreenTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
我的AndroidManifest.xml代码如下:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.chintan.myapplication">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
我的MainActivity.java代码如下:
package com.example.chintan.myapplication;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
我的应用程序看起来像这样。我希望 "Armour" 写在屏幕顶部通知栏正下方。 App looks like this
您可以尝试这样的操作:
// Make fullscreen
int UI_OPTIONS = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION;
getWindow().getDecorView().setSystemUiVisibility(UI_OPTIONS);
我用它来让我的应用程序全屏显示,而且效果非常好。它隐藏了导航栏,只有在您靠近设备屏幕底部向上滑动时才会出现
使用这个简单的功能,摆脱所有问题
public void setFullscreen(boolean fullscreen) {
WindowManager.LayoutParams attrs = getWindow().getAttributes();
if (fullscreen) {
attrs.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN;
AdHelper.bannerAd.setVisibility(View.GONE);
} else {
attrs.flags &= ~WindowManager.LayoutParams.FLAG_FULLSCREEN;
if (AdHelper.isBannerLoaded)
AdHelper.bannerAd.setVisibility(View.VISIBLE);
}
getWindow().setAttributes(attrs);
}
只需将参数传递给 true
全屏和 false
退出全屏。而已。
如下更改您的 AppTheme
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
</style>
我看到你的应用图片,你没有从你的应用主题中删除操作栏。 使用 Theme.AppCompat.Light.NoActionBar 主题作为非操作栏。然后,如果您想在应用的任何 activity 中使用操作栏,请使用 ToolBar .
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
<item name="android:windowIsTranslucent">true</item>
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
希望对您有所帮助。
1- 在 styles.xml
中创建一个 FullScreenTheme <style name="FullScreenTheme" parent="your parent them"> // for example use this parent them --> Theme.AppCompat.Light.DarkActionBar
<item name="windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
</style>
2-在menefist中添加主题
<activity
android:name=".MainActivity"
android:theme="@style/FullScreenTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>