2015-07-15 4 views
0

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

Это моя тема и панель действий стиль:

<resources> 

<!-- Base application theme. --> 
<style name="AppTheme" parent="Theme.AppCompat.Light"> 
    <!-- Customize your theme here. --> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 

    <item name="android:actionBarStyle">@style/TransparentActionBar</item> 
    <item name="android:windowActionBarOverlay">true</item> 

    <!-- Support library compatibility --> 
    <item name="actionBarStyle">@style/TransparentActionBar</item> 
    <item name="windowActionBarOverlay">true</item> 

</style> 

<!-- Transparent Action Bar Style --> 
<style name="TransparentActionBar" 
    parent="Widget.AppCompat.Light.ActionBar.Solid.Inverse"> 
    <item name="android:background">@android:color/transparent</item> 

    <!-- Support library compatibility --> 
    <item name="background">@android:color/transparent</item> 
    <item name="elevation">0dp</item> 
</style> 

Мой минимальный уровень API составляет 16

Я пробовал несколько решений для этого в том числе:

  • Установка высоты до 0dp работает только для устройств Lollipop.
  • я получаю «ресурс не найден» Ошибка при попытке использовать windowContentOverlay
  • Установка фона зрения корня к цвету, как белый или прозрачный не работает

Я пытался чтобы это работало в 4.4.4 безрезультатно. Не возможно ли ниже уровня API 21?

EDIT:

получается, что windowContentOverlay работает только с андроида префиксом:

<item name="android:windowContentOverlay">@null<item/> 

Пытается также определить его без результатов префиксов в ресурсе не найдена ошибка (эта ошибка указывает на то, что с префиксом по какой-либо причине). Я честно не понимаю, почему это происходит. Я могу только предположить, что appcompat не поддерживает атрибут windowContentOverlay.

+0

установка высоты на getSupportActionBar(); – Harry

+0

Пожалуйста, прочитайте весь вопрос: «Установка высоты до 0dp работает только для устройств Lollipop». – Drew

ответ

1

Set windowContentВернуться к чертежу, который будет нарисован под панелью действий. Если вы не хотите, тень установить его в нуль, так как:

<item name="android:windowContentOverlay">@null</item> 

и

<item name="windowContentOverlay">@null</item> 

Это работает уровень 16 и выше API.

+0

Как я уже говорил, при попытке использовать windowContentOverlay с префиксом android и без него появляется сообщение об ошибке «Нет ресурса найдено, которое соответствует указанному имени». – Drew

+0

WindowContentOverlay - это, безусловно, путь. Можете ли вы убедиться, что он установлен в теме приложения/активности, а не в стиле панели действий? Не могли бы вы отправить код, где он установлен? –

+0

Вот что я пробовал. Эти атрибуты добавляются в «базовую прикладную тему» ​​выше, но создание всегда не выполняется с теми ресурсами, которые не найдены. – Drew