棒棒糖:无法在溢出菜单下显示阴影

Lollipop: Had trouble showing a shadow under the overflow menu

我在 Lollipop 设备上的某个 Activity 中显示阴影时遇到了一些问题。

尽管 Activity 的主题和使用的支持 Toolbar 与在任何其他活动中完全相同。我很困惑为什么我无法在那个特定的地方显示阴影 Activity

我花了一两个小时试图找出这背后的原因。我希望这会节省其他人的时间。

所以事实证明,如果要在 Lollipop 设备中呈现阴影,android:hardwareAccelerated 选项需要为 true。请注意,设置标志不是必需的,因为它是 4.0 设备(API 级别 14)及更高版本的默认选项。它在 Android 3.X 上可用,但默认情况下禁用。

示例如下:

<activity android:name=".MainActivity"
          android:theme="@style/Theme.AppCompat.Light.NoActionBar"
          android:hardwareAccelerated="true" />

或更简单地说

<activity android:name=".MainActivity"
          android:theme="@style/Theme.AppCompat.Light.NoActionBar" />