【问题标题】:Remove shadow below ActionBar without Sherlock在没有 Sherlock 的情况下移除 ActionBar 下方的阴影
【发布时间】:2015-03-31 03:42:49
【问题描述】:

我使用 AppCompat 来实现兼容性而不是 Sherlock。有什么办法可以去掉ActionBar下方的阴影?我已经搜索了很多答案,并且都依赖于 Sherlock,这意味着,

<item name="android:windowContentOverlay">@null</item>

根本不适用于 AppCompat。

有什么建议吗?

【问题讨论】:

    标签: java android android-actionbar android-support-library android-appcompat


    【解决方案1】:

    据我所知,如果设备的系统版本高于14,Sherlock 使用默认的ActionBar

    如果您使用此tool 为您的操作栏生成主题,您的操作栏将拥有9patch 的背景图像。如果你仔细观察它们,你会在底部看到不同的颜色,这会导致这种阴影外观。只需使用照片工具将其删除,您就会为您的ActionBar 获得一个无阴影主题。

    【讨论】:

      【解决方案2】:

      我在 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>
      

      我也找到了这个答案:

      AppCompat Actionbar styling

      因此,IMO,您要做的是重新设置 ActionBar 主题的样式(如答案所示)并为其提供自己的不带阴影的可绘制对象。

      编辑:我发现这个答案更接近你的问题:

      Strange divider with the v7 support actionbar

      很抱歉,我无法对这些属性在效果中的作用进行更多研究。

      【讨论】:

        【解决方案3】:

        这适用于 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>
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-03-12
          • 1970-01-01
          • 1970-01-01
          • 2015-10-11
          相关资源
          最近更新 更多