我试图创建一个应用程序主题与一个完全透明的appcompat操作栏。我正在尝试使用windowcontentoverlay删除操作栏下面的阴影,但是由于任何原因,我无法使用此属性生成。elevation属性只适用于棒棒糖+设备,我的最低api级别是16。
这里有什么问题?
错误:(12,29)找不到与给定名称匹配的资源:attr'windowcontentoverlay'。

<resources>

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>

    <item name="android:actionBarStyle">@style/TransparentActionBar</item>
    <item name="android:windowActionBarOverlay">true</item>
    <item name="android:windowContentOverlay">@null</item>

    <!-- Support library compatibility -->
    <item name="actionBarStyle">@style/TransparentActionBar</item>
    <item name="windowActionBarOverlay">true</item>
    <item name="windowContentOverlay">@null</item>

</style>

<!-- Transparent Action Bar Style -->
<style name="TransparentActionBar"
    parent="Widget.AppCompat.Light.ActionBar.Solid.Inverse">
    <item name="android:background">@android:color/transparent</item>

    <!-- Support library compatibility -->
    <item name="background">@android:color/transparent</item>
</style>

最佳答案

抄袭了德鲁在评论部分的回答。
原来,windowcontentoverlay只在android前缀<item name="android:windowContentOverlay">@null<item/>下工作。
尝试在没有前缀的情况下定义它会导致“资源未找到”错误(无论出于何种原因,此错误都指向带有前缀的错误)。
我真的不明白为什么会这样。我只能假设appcompat不支持windowcontentoverlay属性。

07-28 04:04