我使用AppCompat代替Sherlock而不是兼容性。有没有办法删除ActionBar下面的阴影?我已经搜索了这么多的答案,而且都依赖于Sherlock,这意味着,
<item name="android:windowContentOverlay">@null</item>
根本不适用于AppCompat。
有什么建议吗?
答案 0 :(得分:0)
据我所知,如果设备的系统版本高于ActionBar
,Sherlock将使用默认14
。
如果您使用此tool为操作栏生成主题,则会为操作栏生成背景9patch
图像。如果你仔细观察它们,你会在底部看到不同的颜色,这会产生这种阴影效果。只需使用照片工具将其删除,您就可以获得ActionBar
的无阴影主题。
答案 1 :(得分:0)
我在appcompat-v7资源库/res/style_base.xml中找到了这个:
<style name="Widget.AppCompat.Base.ActionBar.Solid" parent="Widget.AppCompat.Base.ActionBar">
<item name="background">@drawable/abc_ab_solid_dark_holo</item>
<item name="backgroundStacked">@drawable/abc_ab_stacked_solid_dark_holo</item>
<item name="backgroundSplit">@drawable/abc_ab_bottom_solid_dark_holo</item>
</style>
<style name="Widget.AppCompat.Light.Base.ActionBar.Solid"
parent="Widget.AppCompat.Light.Base.ActionBar">
<item name="background">@drawable/abc_ab_solid_light_holo</item>
<item name="backgroundStacked">@drawable/abc_ab_stacked_solid_light_holo</item>
<item name="backgroundSplit">@drawable/abc_ab_bottom_solid_light_holo</item>
</style>
我也找到了答案:
所以IMO,你想要做的是重新设计ActionBar主题的样式(如答案中所示)并给它自己的drawable,它没有阴影。
编辑:我发现这个答案更接近您的问题:
Strange divider with the v7 support actionbar
很抱歉,我无法进一步研究这些属性如何影响效果。
答案 2 :(得分:0)
这适用于AppCompat:
<style name="MyAppTheme" parent="Theme.AppCompat.Light">
<item name="actionBarStyle">@style/MyActionBarTheme</item>
</style>
<style name="MyActionBarTheme" parent="Base.Widget.AppCompat.Light.ActionBar.Solid">
<item name="elevation">0dp</item>
</style>