消除SlidingTabLayout上ActionBar阴影

7
我正在将我的应用程序移植到appcompat21,使用SlidingTabLayout在ActionBarActivity中创建选项卡。操作栏会在选项卡条上产生阴影,我无法弄清如何消除它:enter image description here 这是我的代码:
 <style name="MyActionBar" parent="@style/Widget.AppCompat.ActionBar">
     <item name="background">@color/app_primary</item>
     <item name="android:background">@color/app_primary</item>
     <item name="backgroundSplit">@color/black</item>
     <item name="android:backgroundSplit">@color/black</item>
     <item name="android:elevation">0dp</item>
 </style>

我也尝试过。
     <item name="android:windowContentOverlay">@null</item>

我在布局文件中通过设置标签栏底部的高度值来使得标签栏下方出现了阴影,但是现在我有两个阴影……你有什么办法可以解决这个问题吗?


您使用工具栏吗? - Gabriele Mariotti
4个回答

9
出于某些原因,这对我也没有起作用:
<item name="android:elevation">0dp</item>

并且:

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

我目前在使用ActionBar

this.getSupportActionBar().setElevation(0);

如果你在使用 android:elevationandroid:windowContentOverlay 时遇到了任何奇怪的组合,请告诉我。我最终只是在我的 styles.xml 中将它们注释掉了。 - Jared Burrows
我想知道为什么通过布局设置高度不起作用。我也遇到了这个问题。 - David Gay

2

在处理“Elevation”时,物体之间可以有不同的高度,从而给下面的任何物体带来阴影。

如果您将工具栏和选项卡布局设置为相同的高度,则可以解决此问题。


2
我的高度是一样的,但仍然显示阴影。 - behelit

1
.support.design.widget.AppBarLayout 上添加 app:elevation="0dp"。这将解决该问题。

0

你也可以尝试放置

<item name="elevation">0dp</item>

去掉“android:”,这样就可以避免每次启动活动时都设置高度的痛苦。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接