我试图创建一个应用程序主题与一个完全透明的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属性。