我正在使用ActionBarSherlock 4.0.2。
我需要一个完全透明的动作栏(没有霓虹色底部分隔线)。因此,我有以下风格:
<style name="AppTheme" parent="@style/Theme.Sherlock">
<item name="windowActionBarOverlay">true</item>
<item name="icon">@drawable/ic_home</item>
<item name="titleTextStyle">@style/ActionBarCompatTitle</item>
<item name="android:windowFullscreen">true</item>
</style>
通过使用上面的代码,我仍然会有以下效果。
为了禁用后台,我将以下代码放在SherlockFragmentActivity#onCreate
中。然后问题就消失了。
getSupportActionBar().setBackgroundDrawable(null);
但是,我希望看到解决方案在 styles.xml 而不是Java代码中实现,因为我有许多其他设备具有不同的屏幕配置。我将 styles.xml 修改为以下内容,而不使用前面提到的Java代码中的修复。
<style name="AppTheme" parent="@style/Theme.Sherlock">
<item name="windowActionBarOverlay">true</item>
<item name="icon">@drawable/ic_home</item>
<item name="titleTextStyle">@style/ActionBarCompatTitle</item>
<item name="android:windowFullscreen">true</item>
<item name="android:background">@drawable/transparent</item>
<item name="background">@drawable/transparent</item>
</style>
然而,霓虹灯分频器仍然可见。似乎我使用android:background
和background
的修复无法正常工作。我错过了什么吗?
答案 0 :(得分:24)
<style name="AppTheme" parent="@style/Theme.Sherlock">
<item name="actionBarStyle">@style/AppTheme.ActionBar</item>
<item name="android:actionBarStyle">@style/AppTheme.ActionBar</item>
</style>
<style name="AppTheme.ActionBar" parent="@style/Widget.Sherlock.ActionBar">
<item name="background">@android:color/transparent</item>
<item name="android:background">@android:color/transparent</item>
</style>