fitsSystemWindows не работает с библиотеками поддержки 27.1.1 - PullRequest
0 голосов
/ 05 мая 2018

Я использовал библиотеку поддержки Android версии 27.0.2. С этой версией у меня была такая конфигурация:

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context="...Activity">

<android.support.design.widget.AppBarLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/ToolbarThemeBlack">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary" />

</android.support.design.widget.AppBarLayout>

<include layout="@layout/content_..." />

</android.support.design.widget.CoordinatorLayout>

в стилях v21:

<style name="AppTheme.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
    <item name="android:statusBarColor">@android:color/transparent</item>

    <item name="android:windowActivityTransitions">true</item>
    <item name="android:windowContentTransitions">true</item>
    <item name="android:windowAllowEnterTransitionOverlap">true</item>
    <item name="android:windowAllowReturnTransitionOverlap">true</item>
    <item name="android:windowSharedElementEnterTransition">@android:transition/move</item>
    <item name="android:windowSharedElementExitTransition">@android:transition/move</item>
</style>

в теме по умолчанию:

<style name="AppTheme.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="android:textColorPrimary">@color/textColorPrimary</item>
    <item name="android:textColorSecondary">@android:color/darker_gray</item>
</style>

С этой конфигурацией все работает как положено. Цвет панели инструментов был желаемым, единственный способ показать это - добавить android: fitsSystemWindows = "true". Сегодня я обновил библиотеку поддержки Android до 27.1.1, и теперь цвет панели инструментов белый, похоже, что fitsSystemWindows перестает работать.

Здесь вы можете понять, что я имею в виду.

Цвет панели инструментов изменяется до и после обновления Что я делаю не так?

1 Ответ

0 голосов
/ 05 мая 2018

Я обнаружил, что замена:

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

от

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

решена проблема, когда colorPrimaryDark - это любой цвет, объявленный в приложении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...