我使用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(在Honeycomb版本以下)。但是,在ICS中,我的操作栏下方有一个阴影,我不想要。 有什么样式项可以使它消失?
getSupportActionBar().setElevation(0);
是无效的。因此,你需要在应用程序主题中添加<item name="android:windowContentOverlay">@null</item>
来解决这个问题。我之前也遇到过类似的问题,现在我的解决方法是同时使用了setElevation
和在应用程序主题中添加windowContentOverlay
。其中,setElevation
适用于 Android 5.0 和以上版本,而另一个方法则适用于 Lollipop 以下的版本。祝好运! - Reaz MurshedgetSupportActionBar().setElevation(0);
时,你必须在调用setContentView()
之前调用此方法才能生效。 - levibostian