2015-09-23 6 views
1

Я хотел бы удалить тень вокруг моего меню переполнения панели действий, но я не нашел никаких атрибутов, позволяющих это. Я расширяю Theme.AppCompat. Меню переполнения панели действий Android удалить тень

<!-- Base application theme. --> 
<style name="AppTheme" parent="Theme.AppCompat"> 
    <!-- Customize your theme here. --> 
    <item name="actionOverflowButtonStyle">@style/OverflowButton</item> 
    <item name="actionOverflowMenuStyle">@style/OverflowMenu</item> 
    <item name="actionBarStyle">@style/MyActionBarLogo</item> 
    <item name="android:dropDownListViewStyle">@style/PopupMenuListView</item> 
    <item name="dropDownListViewStyle">@style/PopupMenuListView</item> 
    <item name="android:textColor">@color/black</item> 
    <item name="android:popupMenuStyle">@style/PopupMenu</item> 
</style> 
<style name="MyActionBarLogo" parent="Widget.AppCompat.ActionBar"> 
    <item name="background">@color/white</item> 
    <item name="displayOptions">useLogo|showHome</item> 

    <item name="elevation">0dp</item> 
    <item name="android:windowContentOverlay">@null</item> 
</style> 
<style name="OverflowButton" parent="@style/Widget.AppCompat.ActionButton.Overflow"> 
    <item name="android:src">@mipmap/menu_logo</item> 
</style> 
<style name="OverflowMenu" parent="@style/Widget.AppCompat.PopupMenu.Overflow"> 
    <item name="overlapAnchor">false</item> 
    <item name="android:dropDownVerticalOffset">52dp</item> 
    <item name="android:dropDownHorizontalOffset">10dp</item> 
</style> 
<style name="PopupMenuListView" parent="@style/Widget.AppCompat.ListView.DropDown"> 
    <item name="android:divider">@drawable/menu_divider</item> 
    <item name="android:dividerHeight">1dp</item> 
    <item name="android:textColor">@color/black</item> 
    <item name="android:background">@color/white</item> 
</style> 
<style name="PopupMenu" parent="@style/Widget.AppCompat.ListPopupWindow"> 
    <item name="android:popupBackground">@color/white</item> 
</style> 

http://imgur.com/5mbceT9

ответ

1

Вы можете попробовать решение this

getSupportActionBar().setElevation(0); 

UPDATE

<style name="MyActionBarLogo" parent="Widget.AppCompat.ActionBar"> 
    <item name="background">@color/white</item> 
    <item name="displayOptions">useLogo|showHome</item> 

    <item name="elevation">0dp</item> 
    <item name="android:windowContentOverlay">@null</item> 
    <item name="android:actionDropDownStyle">@style/DropDownMenuStyle</item> 
</style> 



<style name="DropDownMenuStyle" parent="Widget.AppCompat.Spinner.DropDown.ActionBar"> 
    <item name="android:background">@android:color/transparent</item> 
</style> 
+0

Это только для ActionBar тени, которые я уже удалены :) – tomek550

+0

Ok извините, я буду обновлять мой ответ – NaviRamyle

+0

не удается разрешить symbol '@ style/Widget.Spinner.DropDown.ActionBar', Я добавил AppCompat там, так что теперь @ style/Widget.AppCompat.Spinner.DropDown.ActionBar, но тень все еще там. – tomek550

0

Вам необходимо применить стиль нулевой отметки к правильному элементу, в данном случае actionOverflowMenuStyle.

(Это использование AppCompat)

<style name="Theme.myapp" parent="Theme.AppCompat.Light"> 
    <item name="actionOverflowMenuStyle">@style/Theme.myapp.Widget.PopupMenu.Overflow</item> 
</style> 

Тогда

<style name="Theme.myapp.Widget.PopupMenu.Overflow" parent="Widget.AppCompat.PopupMenu.Overflow"> 
    <item name="elevation">0dp</item> 
    <item name="android:popupElevation">0dp</item> 
</style> 
Смежные вопросы