usuń pasek narzędzi we fragmentach
Użyłem Androidów „Bottom Navigation Activity” - przykład, ale w każdym fragmencie mam pusty pasek narzędzi na górze fragmentu (biały pasek u góry ekranu na zrzucie ekranu). Zastosowałem już NoActionBar w pliku Manifest, a także w podglądzie układu, nie widzę paska narzędzi. Jak mogę usunąć pasek narzędzi na górze każdego fragmentu?
AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="de.myapp.test">
<uses-permission android:name="android.permission.VIBRATE" />
<application
android:allowBackup="false"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.Quizeule">
<activity android:name=".activities.PlayActivity" />
<activity android:name=".activities.SplashScreenActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".activities.LoginActivity" />
<activity android:name=".MainActivity" />
</application>
</manifest>
Themes.xml:
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Base application theme. -->
<style name="Theme.Quizeule" parent="Theme.MaterialComponents.DayNight.NoActionBar">
<!-- Primary brand color. -->
<item name="colorPrimary">@color/purple_500</item>
<item name="colorPrimaryVariant">@color/purple_700</item>
<item name="colorOnPrimary">@color/white</item>
<!-- Secondary brand color. -->
<item name="colorSecondary">@color/teal_200</item>
<item name="colorSecondaryVariant">@color/teal_700</item>
<item name="colorOnSecondary">@color/black</item>
<!-- Status bar color. -->
<item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>
<!-- Customize your theme here. -->
</style>
</resources>

Odpowiedzi
W activity_main.xml
Usuń android:paddingTop="?actionBarSize"
i że będzie naprawić błąd
Czy możesz spróbować dodać poniżej w Theme.Quizeule?
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
Jest to domyślne zachowanie Theme.MaterialComponents.DayNight.NoActionBar
ciemnego motywu Material Design. Sprawdź tę odpowiedź, aby uzyskać więcej informacji
Jeśli nadal chcesz używać tego motywu DayNight, musisz usunąć item name="colorPrimary"
atrybut i użyć item name="colorSurface"
zamiast tego.
Lub możesz użyć Theme.MaterialComponents.NoActionBar
motywu, jeśli nie potrzebujesz efektu trybu ciemnego.
Musisz dodać te windowActionBar
iwindowNoTitle
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
Spróbuj tego :
Jeśli używasz java; napisz we fragmencie onCreate:
GetActivity.getSupportedActionBar.hide();
Albo
// set Windows Flags to Full Screen
getWindow().setFlags( WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
Lub jeśli używasz kotlin; napisz w onCreateview:
(activity as AppCompatActivity).supportActionBar!!.hide()}
Lub
requiredActivity.supportActionBar!!.hide()