Intereting Posts
Как разблокировать весь код операционной системы Android? Что вызывает «java.io.IOException: поток был сброшен: CANCEL» с okhttp и spdy? Приложения Android OpenGL перестают работать после загрузки в эмулятор Переключение фрагментов – фрагмент карты Google V2 – активность была уничтожена Ошибка Android – Как добавить нижнюю (сфокусированную) границу для поворота? Android eclipse DDMS – не удается получить доступ к данным / данным / на телефоне, чтобы вытащить файлы Java: эффективная фильтрация ArrayList? Поддержка WebSocket на мобильных устройствах Как выйти из браузера Twitter в приложении в Android? Несколько уведомлений и только показать первый Android Как улучшить качество отладочных данных, когда мое приложение аварийно завершает работу? Путаница между типами данных OpenCv4Android и C ++ Использовать аннотации Android в пользовательском диалоговом классе Обнаруживать, если Android SurfaceView рисует / перемещается ANDROID: добавление пустого пространства в конец списка ListView

WindowBackground в Android 6 (Marshmallow)

Я определил базовый стиль для моего приложения со следующим элементом:

<item name="android:windowBackground">@color/window_background</item> 

Который задал цвет фона для всех моих действий, пока я не протестировал свое приложение на Android 6, где все фоны белые. Фоны по-прежнему остаются цветными / window_background на устройствах, работающих с пред-зефиром.

Кто-нибудь знает, как сделать эту работу (или почему она не работает) на Android 6?

Редактируйте с дополнительной информацией: я нацелен на API 22, я ничего не изменил из предыдущей версии или не обновил API, только на Android 6 меняет фон.

Solutions Collecting From Web of "WindowBackground в Android 6 (Marshmallow)"

Я не нашел ничего конкретного для Зефира, который мог бы вызвать это. Итак, предложения, которые у меня есть:

Изменение ресурса цвета фона на ресурс с возможностью рисования.

Из:

 <item name="android:windowBackground">@color/window_background</item> 

Для того, чтобы:

 <item name="android:windowBackground">@drawable/window_background</item> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="@color/window_background"/> </shape> 

Если вы не проверили непрозрачность всех ваших просмотров:

Убедитесь, что ваш windowBackground на самом деле является фоном большинства ваших действий (в частности, над прокручиваемыми разделами, где чрезмерное превышение является самым важным, чтобы избежать), удаляя, по возможности, непрозрачные фоны.

Сделайте для вас работу windowBackground вместо того, чтобы использовать null

Я думал, что это интересно, чтобы увидеть приоритет того, как устанавливаются фоновые слои. Я не уверен, что вы устанавливаете какие-либо фоновые представления или как вы настроили свое приложение, но это стоит прочитать.

Фоны состоят из нескольких слоев: от начала до фронта:

  • Фон Подходит для темы
  • Сплошной цвет (устанавливается через setColor (int))
  • Два Drawables, предыдущие и текущие (устанавливаются через setBitmap (Bitmap) или setDrawable (Drawable)), которые могут находиться в переходном режиме

BackgroundManager

Я не могу найти, есть ли разница с темами в Marshmallow или порядком элементов, кажется, что никаких фундаментальных изменений не было, и я не могу найти ошибки для этого.

Надеюсь, это поможет, дайте мне знать, и я могу посмотреть еще раз.

Если это не поможет, возможно, стоит опубликовать еще один код, относящийся к проблеме. Приветствия.

У меня была такая же проблема, но я узнал, что, если я прокомментировал actionBarTheme в своих стилях, он начал работать внезапно. Я углубился в свои стили и узнал, что стиль панели действий устанавливает атрибут android:background после комментирования, все работает сейчас, как ожидалось.

Если вы используете Android Studio 1.4 или выше, перейдите к стилям, в которых находится ваша тема, и нажмите «Открыть редактор» в правом верхнем углу. Затем измените свой фон окна. Он должен быть под "android: colorBackground"

Как установить и windowBackground и colorBackground

 <item name="android:windowBackground">@color/window_background</item> <item name="android:colorBackground">@color/window_background</item>