Удалить тень под панелью действий

Я использую actionbarsherlock. Часть кода ниже отвечает за изменение фона на пользовательский.

<style name="Widget.Styled.ActionBar" parent="Widget.Sherlock.ActionBar"> <item name="background">@drawable/actionbar_bg</item> <item name="android:background">@drawable/actionbar_bg</item> <...> </style> <style name="Theme.MyApp" parent="@style/Theme.Sherlock.Light"> <item name="actionBarStyle">@style/Widget.Styled.ActionBar</item> <item name="android:actionBarStyle">@style/Widget.Styled.ActionBar</item> <..> </style> 

И он работает для actionbarsherlock (на версиях ниже сотовых). Но в ICS у меня есть тень под панелью действий, которую я не хочу. Что такое элемент стиля, чтобы он исчез?

Solutions Collecting From Web of "Удалить тень под панелью действий"

Что такое элемент стиля, чтобы он исчез?

Чтобы удалить тень, добавьте это в свою тему приложения:

 <style name="MyAppTheme" parent="android:Theme.Holo.Light"> <item name="android:windowContentOverlay">@null</item> </style> 

ОБНОВЛЕНИЕ: Как заявила @ Quinny898, на Android 5.0 это изменилось, вам нужно вызвать setElevation(0) на панели действий. Обратите внимание: если вы используете библиотеку поддержки, вы должны вызвать ее так:

 getSupportActionBar().setElevation(0); 

Для Android 5.0, если вы хотите установить его прямо в стиле, используйте:

 <item name="android:elevation">0dp</item> 

И для поддержки совместимости библиотеки поддержки:

 <item name="elevation">0dp</item> 

Пример стиля для легкой темы AppCompat:

 <style name="Theme.MyApp.ActionBar" parent="style/Widget.AppCompat.Light.ActionBar.Solid.Inverse"> <!-- remove shadow below action bar --> <!-- <item name="android:elevation">0dp</item> --> <!-- Support library compatibility --> <item name="elevation">0dp</item> </style> 

Затем примените этот пользовательский стиль ActionBar к теме приложения:

 <style name="Theme.MyApp" parent="Theme.AppCompat.Light"> <item name="actionBarStyle">@style/Theme.MyApp.ActionBar</item> </style> 

Для pre 5.0 Android добавьте это также в свою тему приложения:

 <!-- Remove shadow below action bar Android < 5.0 --> <item name="android:windowContentOverlay">@null</item> 

На Android 5.0 это изменилось, вам нужно вызвать setElevation (0) на панели действий. Обратите внимание: если вы используете библиотеку поддержки, вы должны вызвать ее так:

 getSupportActionBar().setElevation(0); 

Это не влияет на элемент windowContentOverlay, поэтому никаких изменений в стилях не требуется

Если вы работаете с ActionBarSherlock

В своей теме добавьте:

 <style name="MyTheme" parent="Theme.Sherlock"> .... <item name="windowContentOverlay">@null</item> <item name="android:windowContentOverlay">@null</item> .... </style> 

Add app:elevation="0dp" в AppBarLayout для скрытия тени в панели приложений

Вы должны установить приложение: elevetor = "0dp" в android.support.design.widget.AppBarLayout, а затем он работает: D

 <android.support.design.widget.AppBarLayout app:elevation="0dp"... > <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="@android:color/transparent" app:popupTheme="@style/AppTheme.PopupOverlay" > </android.support.v7.widget.Toolbar> </android.support.design.widget.AppBarLayout> 
 app:elevation="0dp" 

но нет

 android:elevation="0dp" 

Работал на меня на android L

У меня такая же проблема, и я успешно решил эту проблему. Все, что вам нужно сделать, это просто изменить высоту на 0 значений с плавающей запятой в том действии, в котором вы хотите удалить высоту.

Если вы хотите изменить его в активности под названием MyActivity.java вам нужно сначала получить ActionBar .

Сначала импортируйте класс ActionBar

 import android.support.v7.app.ActionBar; 

После импорта вы должны инициализировать переменную панели действий и установить ее возвышение на 0.

  private ActionBar toolbar; @Override protected void onCreate(Bundle savedInstanceState) { . . toolbar=getSupportActionBar(); toolbar.setElevation(0); . . } 

Для тех, кто работает с фрагментами, и он исчез после установки toolbar.getBackground().setAlpha(0); Или любое исчезновение, я думаю, что вам нужно довести ваш AppBarLayout до последнего в xml, поэтому его фрагмент, а затем AppBarLayout, будет relativelayout / constraint / linear, какой бы вы ни использовали.