迁移到 AndroidX 后 AppBarLayout 膨胀错误

AppBarLayout inflating error after migrating to AndroidX

迁移到 AndroidX 时我遇到了这个问题:

Java.lang.RuntimeException: Unable to start activity
ComponentInfo{com.mandarine.android/com.mandarine.android.features.root.RootActivity}:
android.view.InflateException: Binary XML file line #18: Binary XML file line #18:
Error inflating class android.support.design.widget.AppBarLayout

除非您实施旧的支持库并启用 Jetifier,否则您必须重命名 XML 中的所有支持 XML。

android.support.design.widget.AppBarLayout 现在是 com.google.android.material.appbar.AppBarLayout

为此,您可能需要在 build.gradle 中使用 implementation 'com.google.android.material:material:1.0.0-beta01'

使用支持库查找 XML 中的任何其他视图,并重命名标签以匹配其 AndroidX 版本。您只需在 Google 中搜索 "ClassName AndroidX" 即可找到 class 的文档。

我使用了 AS 3.2 迁移到 AndroidX 向导。但它未能迁移一些 类。以下是我在项目中遇到的一些。第二项是正确的

android.support.design.widget.BottomSheetDialog
com.google.android.material.bottomsheet.BottomSheetDialog 

android.support.design.widget.TextInputLayout
com.google.android.material.textfield.TextInputLayout 

android.support.design.widget.CoordinatorLayout
androidx.coordinatorlayout.widget.CoordinatorLayout

android.support.design.widget.NavigationView
com.google.android.material.navigation.NavigationView

androidx.core.view.ViewPager
androidx.viewpager.widget.ViewPager

android.support.design.widget.BottomSheetBehavior
com.google.android.material.bottomsheet.BottomSheetBehavior 

android.support.v7.widget.Toolbar
androidx.appcompat.widget.Toolbar 

android.support.design.internal.BottomNavigationItemView
com.google.android.material.bottomnavigation.BottomNavigationItemView

android.support.design.internal.BottomNavigationMenuView
com.google.android.material.bottomnavigation.BottomNavigationMenuView 

androidx.appcompat.widget.CardView
androidx.cardview.widget.CardView 

android.support.design.widget.BottomNavigationView
com.google.android.material.bottomnavigation.BottomNavigationView

androidx.core.view.ViewPager
androidx.viewpager.widget.ViewPager

importandroidx.core.widget.DrawerLayout
androidx.drawerlayout.widget.DrawerLayout 

androidx.appcompat.widget.RecyclerView
androidx.recyclerview.widget.RecyclerView 

androidx.core.view.PagerAdapter
androidx.viewpager.widget.PagerAdapter

importandroidx.core.app.FragmentManager
importandroidx.fragment.app.FragmentManager