java.lang.ClassNotFoundException: 未在路径上找到 class "androidx.core.view.ViewPager"

java.lang.ClassNotFoundException: Didn't find class "androidx.core.view.ViewPager" on path

我刚刚将我的项目迁移到 androidx,我收到一个 inflation 膨胀 viewpager 组件的错误...我用 androidx.viewpager.widget.ViewPager[替换了 android.support.v4.view.ViewPager

这是我的xml文件

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="fill_parent"
      android:padding="@dimen/_1dp"
      android:layout_height="wrap_content"
      android:background="@color/banner_border_color">

      <androidx.viewpager.widget.ViewPager
           android:id="@+id/vp_slider"
           android:layout_width="match_parent"
           android:layout_height="@dimen/_140dp"
           android:background="@drawable/thumb_new_background" />

           <RelativeLayout
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_gravity="bottom">

               <TextView
                   android:id="@+id/tv_banner_view_more"
                   android:layout_width="wrap_content"
                   android:layout_height="wrap_content"
                   android:layout_centerVertical="true"
                   android:layout_marginLeft="@dimen/_16dp"
                   android:background="@drawable/drawable_btn_curved"
                   android:paddingBottom="@dimen/_6dp"
                   android:paddingLeft="@dimen/_8dp"
                   android:paddingRight="@dimen/_8dp"
                   android:paddingTop="@dimen/_6dp"
                   android:visibility="gone"
                   android:text="@string/text_view_more"
                   android:textColor="@color/c_white"
                   android:textSize="@dimen/_8sp" />

     </RelativeLayout>

</FrameLayout>

错误 我得到:

Caused by: android.view.InflateException: Binary XML file line #329: Binary XML file line #8: Error inflating class androidx.core.view.ViewPager
         Caused by: android.view.InflateException: Binary XML file line #8: Error inflating class androidx.core.view.ViewPager
         Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.core.view.ViewPager" on path: DexPathList[

您需要在 build.gradle 文件中低于 dependencies

implementation 'com.google.android.material:material:1.1.0

我认为您需要使缓存无效并重新启动

转到 文件 > 无效 caches/Restart > ** 无效

然后重建项目

我发现问题了, 当我们合并到 androidx 然后 android 工作室转换 viewpager,滑动刷新布局和一些其他视图到 androidx.core 例如 viewpager 它看起来像androidx.core.view.ViewPager 但正确的是 androidx.viewpager.widget.ViewPager 请检查您的 xml 布局并查看如果有 androidx.core 是否添加了正确的组件,然后检查正确的组件并替换它。 并且还导入依赖项

implementation 'com.google.android.material:material:1.1.0-alpha08

您需要在 build.gradle 文件中添加以下依赖项

implementation 'com.google.android.material:material:1.4.0