如何修复 Android 资源链接失败的 dialogCornerRadius not found

Mau*_*ato 8 android android-appcompat android-fragments android-support-library androidx

我正在开发一个应用程序,我遇到了这个问题。

Android gradle/缓存/转换

Android 资源链接失败 */appcompat-1.0.0/res/values-v28/values-v28.xml:5:5-8:13: AAPT: 错误: 资源 android:attr/dialogCornerRadius 未找到。

我读过这个问题可以通过 API 27 到 28 解决。我遇到的问题是,如果我更新到 28,我会失去我的应用程序的感觉,因为我所有的应用程序都是由 Fragments 制作的,并且是在最新版本的 Android Studio 中api 片段已弃用。

       v28/values-v28.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
          <style name="Base.Theme.AppCompat" parent="Base.V28.Theme.AppCompat"/>
          <style name="Base.Theme.AppCompat.Light" parent="Base.V28.Theme.AppCompat.Light"/>
          <style name="Base.V28.Theme.AppCompat" parent="Base.V26.Theme.AppCompat">
            <!-- We can use the platform styles on API 28+ -->
            <item name="dialogCornerRadius">?android:attr/dialogCornerRadius</item>
          </style>
          <style name="Base.V28.Theme.AppCompat.Light" parent="Base.V26.Theme.AppCompat.Light">
            <!-- We can use the platform styles on API 28+ -->
            <item name="dialogCornerRadius">?android:attr/dialogCornerRadius</item>
          </style>
</resources>
Run Code Online (Sandbox Code Playgroud)

那么,如何运行我的应用程序并保留片段(不更新到 Android 9 api)。

我要修改项目 dialogCornerRadius

Gab*_*tti 8

如果我更新到 28,我会失去我的应用程序的感觉,因为我所有的应用程序都是由 Fragment 创建的

什么都不会丢失。
android.app.Fragment在 API 28 中已弃用,但这并不意味着它不起作用。你也可以:

任何状况之下

/values-v28/values-v28.xml:5:5-8:13: AAPT: 错误: 资源 android:attr/dialogCornerRadius 未找到

需要 compileSdkVersion 28.

您有以下选择:

  • 使用支持库 v27 compileSdkVersion 27
  • 使用支持库 v28 compileSdkVersion 28
  • 使用或您的项目迁移androidxcompileSdkVersion 29compileSdkVersion 28