无法使用 'android:windowTranslucentNavigation'

Unable to use 'android:windowTranslucentNavigation'

a post of the same question and it has received an answer个。我怀疑我的情况有所不同,这可能表明项目配置存在一般问题。 windowTranslucentNavigation 适用于 API 19。我已将 targetSdkVersion inn 设置为 build.gradle 和清单。 在 build.gradle:

defaultConfig {
applicationId "xxx"
minSdkVersion 9
targetSdkVersion 21
// Enabling multidex support.
multiDexEnabled true

}

清单中:

<uses-sdk
android:minSdkVersion="9"
android:targetSdkVersion="21" />

Android Studio对windowTranslucentNavigation一清二楚。以下警告显示了这一点:

构建项目时,产生如下错误:

错误:(7, 29) 找不到与给定名称匹配的资源:attr 'windowTranslucentNavigation'.

这里是themes.xml的内容:

<resources>
<!-- the theme applied to the application or activity -->
<style name="OverlayingActionBarTheme"
    parent="@style/Theme.AppCompat">
    <item name="android:windowActionBarOverlay">true</item>
    <item name="android:actionBarStyle">@style/TransparentActionBar</item>
    <item name="android:windowTranslucentNavigation">true</item>
    <!-- Support library compatibility -->
    <item name="windowActionBarOverlay">true</item>
    <item name="actionBarStyle">@style/TransparentActionBar</item>
    <item name="windowTranslucentNavigation">true</item>
</style>
<!-- ActionBar styles -->
<style name="TransparentActionBar"
    parent="@style/Widget.AppCompat.ActionBar">
    <item name="android:background">@color/black_overlay</item>

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

有人可以提供有关如何解决此问题的提示吗?

如果您想支持或不使用它,您需要将 minSdkVersion 更改为 19。在任何其他情况下,例如调用仅在新版本中支持的方法,如果您的版本较低,您可以通过编程方式决定不调用它,但在这种情况下,您无法根据版本以编程方式更改样式。

建议您更改 minSdkVersion 以支持这一点的答案并不完全正确。早于 19 的版本可能不支持该功能,但您可以在不更改 minSdkVersion.

的情况下使用它

您将在名为 values-v19 的文件夹中创建一个 themes.xml 文件。这将允许您在 运行 该版本或更高版本的任何设备上使用 SDK 19+ style/theme 功能。

有关其工作原理的更多信息:Supporting Different Platform Versions