Цвет строки состояния appcompat-v7 v23.0.0 черный в режиме ActionMode
ОБНОВИТЬ
Та же проблема присутствует в последнем приложении Gmail. Я до сих пор не понимаю, почему Google так неприятно изменил пользовательский интерфейс. Навязчивое во мне сходит с ума всякий раз, когда я вижу это
ВОПРОС
У меня есть эта странная проблема с appcompat-v7 23. Проблема, которую я собираюсь описать, не возникает с 22 сериями
Вы можете получить исходный код, который воспроизводит эту формуhttps://github.com/devserv/t/ После создания вы можете нажать и удерживать элемент в списке, чтобы активировать ActionMode
Выпуск:
Когда в ActionMode, appcompat превращает строку состояния в черный. Этого не произойдет, если я не буду использовать следующие
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
в моем стиле v21, но я должен использовать его, потому что я хочу, чтобы мой навигационный ящик смотрел за строкой состояния.
Я использовал следующее, чтобы избежать черной строки состояния, когда ActionMode запускался и заканчивался
public boolean onPrepareActionMode(ActionMode actionMode, Menu menu) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getActivity().getWindow().setStatusBarColor(getResources().getColor(R.color.appColorPrimaryDark));
}
}
public void onDestroyActionMode(ActionMode actionMode) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getActivity().getWindow().setStatusBarColor(getResources().getColor(android.R.color.transparent));
}
mMode = null;
}
Приведенный выше код не создавал / избегал черную строку состояния, но не работает должным образом на v23 appcompat. Вместо этого вы видите короткую черную строку состояния, в то время как ActionMode разрушен. Похоже, что это связано с анимацией, которая воспроизводится при разрушении ActionMode.
Я пытался открыть сообщения об ошибках, но он был отклонен с комментарием
Don't re-create bugs.
Я что-то пропустил?
Вот скриншоты для обычного и боевого режима