如您所知,Elevation在Pre-Lollipop设备上不起作用。因此,appcompat-v7中的默认应用程序栏使用“伪阴影”纹理(我喜欢称之为)来模拟阴影。我的问题是我需要使用自定义工具栏。当我使用自定义工具栏时,该“伪阴影”不存在。所以它看起来很平坦。任何想法如何添加阴影回来?有些人在其他论坛上说过要添加一个FrameLayout,前景是“android:windowContentOverlay”,它与ToolBar重叠。可悲的是,我还没有找到任何可行的办法。由于某种原因,在我的测试中,“android:windowContentOverlay”无论如何都是不可见的。不知道我做错了什么。 :/使用工具栏时阴影不起作用(棒棒糖appcompat-v7)
下面是我的工具栏上的布局XML数据:
<android.support.v7.widget.Toolbar
android:id="@+id/my_awesome_toolbar"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:minHeight="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
下面是它看起来像使用默认程序兼容性AppBar:http://imgur.com/0EiE1Vv
下面是它看起来像一个自定义工具栏:http://imgur.com/GGEC6Tq
编辑:在alanv的帮助下,我想出了如何在工具栏下创建阴影。但是,它与AppCompat中默认的不同。这只是一个微弱的阴影,如果我没有记错的话,它就是在旧版本中使用过的相同的阴影资源。我很难找到默认AppCompat栏的资源。
前景应该用设置机器人:前景= “机器人:ATTR/windowContentOverlay”。FrameLayout应该位于您的工具栏下方,并且应该包含您的应用内容。 – alanv 2014-10-29 22:03:15
感谢您的提示。它实际上*创造了一个影子,虽然它很微弱。不幸的是,我不太在寻找什么。也许有另一个资源比windowContentOverlay这样做?我似乎无法找到任何东西。 – Michael 2014-10-30 04:20:13
@Phascinate是否为这两个叠加层,工具栏和下面的内容找到适当的资源?它看起来像是两个不同的叠加层,我正在寻找资源来实现类似于股票工具栏的结果。 – tomrozb 2014-12-01 13:51:38