在AndroidX上迁移

时间:2018-11-06 13:09:10

标签: android android-appbarlayout androidx

当您迁移到版本AndroidX时遇到问题:

  

Java.lang.RuntimeException:无法启动活动ComponentInfo {com.mandarine.android/com.mandarine.android.features.root.RootActivity}:android.view.InflateException:二进制XML文件第18行:二进制XML文件第18行:膨胀类android.support.design.widget.AppBarLayout的错误

2 个答案:

答案 0 :(得分:5)

除非您实现旧的支持库并启用Jetifier,否则必须重命名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”,即可找到该类的文档。

答案 1 :(得分:5)

我使用了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