android - 如何在Holo主题中删除ActionBarDivider

时间:2013-08-17 16:41:12

标签: android android-actionbar android-styles

我有Activity黑暗ActionBar。我需要删除它的垂直分隔线,因为我的图标已经有“内置”分隔线。 我尝试过的是

活动风格:

     <style name="sMain" parent="@android:style/Theme.Holo">
    <item name="android:icon">@android:color/transparent</item>
    <item name="android:actionBarStyle">@style/MyActionBar</item>
</style>

MyActionBar:

   <style name="MyActionBar" parent="android:Widget.Holo.ActionBar">
    <item name="android:actionBarDivider">@null</item>
</style>

这没有任何效果。我有什么想法吗?

1 个答案:

答案 0 :(得分:3)

您需要将android:actionBarStyle属性设置为活动主题的一部分,而不是操作栏样式的一部分。

所以我相信这应该有效:

<style name="sMain" parent="@android:style/Theme.Holo">
    <item name="android:icon">@android:color/transparent</item>
    <item name="android:actionBarStyle">@style/MyActionBar</item>
    <item name="android:actionBarDivider">@null</item>
</style>

如何判断属性属于哪个?我曾经也在努力解决这个问题(通常通过反复试验解决),直到我发现使用了android.R.styleable类!看看这里:https://developer.android.com/reference/android/R.styleable.html

如果您在actionBarStyle页面中进行搜索,则会看到它显示为Theme_actionBarStyle,这意味着它是Theme样式的一部分(请记住没有技术主题和风格之间的区别)。如果您对ActionBar_进行搜索,则可以遍历可以设置为ActionBar样式一部分的所有属性。