Установите строку состояния Android на полностью прозрачный, не работает должным образом - PullRequest
0 голосов
/ 22 мая 2019

Я создаю мобильное приложение, используя Xamarin.Forms, и в настоящее время у меня проблема с настройкой строки состояния на платформе Android, чтобы она была полностью прозрачной (как этот пост здесь )

Поскольку я использую xamarin.forms, так что я просто хочу справиться с этим, используя styles.xml Android

Я уже прочитал этот пост( Android Полностью прозрачная строка состояния? ), а также некоторые другие подобные посты и пробовали так же, но я все еще не мог заставить его работать должным образом.

Вот мой styles.xml:


  <style name="MainTheme" parent="MainTheme.Base">
  </style>
  <style name="SplashTheme" parent="MainTheme.Base">
    <item name="android:windowBackground">@drawable/splash_screen</item>
  </style>
  <!-- Base theme applied no matter what API -->
  <style name="MainTheme.Base" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="windowNoTitle">true</item>
    <item name="windowActionBar">false</item>
    <item name="colorPrimary">#2196F3</item>
    <item name="colorPrimaryDark">#1976D2</item>
    <item name="colorAccent">#FF4081</item>
    <item name="windowActionModeOverlay">true</item>
    <item name="android:datePickerDialogTheme">@style/AppCompatDialogStyle</item>

    <item name="android:statusBarColor">@android:color/transparent</item>
    <item name="android:navigationBarColor">@android:color/transparent</item>

    <item name="android:windowTranslucentStatus">false</item>
    <item name="android:windowTranslucentNavigation">true</item>

    <item name="android:windowDrawsSystemBarBackgrounds">true</item>

  </style>

  <style name="AppCompatDialogStyle" parent="Theme.AppCompat.Light.Dialog">
    <item name="colorAccent">#FF4081</item>
  </style>
</resources>

и вот мой экран-заставка xml:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
  <item>
    <bitmap
        android:src="@drawable/splash"
        android:tileMode="disabled"
        android:gravity="fill_horizontal|fill_vertical"
        />
  </item>
</layer-list>

Мне удалось получить желаемый результат с помощью строки состояния, однако проблема с навигационной панелью осталась.Изображения здесь: Splash Screen

Screen

Как вы можете видеть на изображении, панель навигации занимает пространство моегоСодержимое приложения.

Кроме того, когда я изменяю android:windowTranslucentNavigation на false, это приводит к результату, подобному этому изображению, положение столбцов правильное, но цвет отстой after

Также мне нужно изменить цвет содержимого полос на более темный, а не белый, как эти изображения.

Поэтому мой вопрос заключается в том, как сделать так, чтобы цвет моей строки состояния был полностью прозрачным, а панель навигации - полупрозрачной, как на моих первых 2 изображениях, и их положение, как на моем последнем изображении, просто установив стили..xml

Я ценю вашу помощь.

...