关于安卓新版本adnroid.support.v4被废弃的解决办法之一

问题复现

在实现滑动tab切换效果的时候使用到了一个外部依赖:SlidingTabLayout,就是正常添加依赖之后使用嘛,但是写道最后一行代码的时候报错了
在这里插入图片描述
“Cannot access ‘android.support.v4.view.ViewPager.OnPageChangeListener’ which is a supertype of ‘com.flyco.tablayout.SlidingTabLayout’. Check your module classpath for missing or conflicting dependencie”翻译成人话就是:“在尝试访问 android.support.v4.view.ViewPager.OnPageChangeListener 时出现错误,因为 com.flyco.tablayout.SlidingTabLayout 似乎依赖于一个冲突的库或者没有正确配置。”。
查看com.flyco.tablayout.SlidingTabLayout的源码发现是基于android.support.v4.view.ViewPager实现的,但是我的viewPager类是基于我自定义的一个类,该类继承的是androidx.widget.viewPager,这样就存在冲突

解决过程

1.添加android.support.v4依赖然后导包,发现根本找不到。上网查阅资料后发现原来是在最新版的AndroidStudio中,android.support.v4已经被弃用,而是使用了AndroidX库。有一种解决办法就是将使用android.suppport.v4的部分全部修改为androidx.widget.viewPager,但这个库是我添加的依赖啊,怎么可以随便修改…
2.在暂时找不到解决办法之后在想要不要自己写一个滑动切换效果,不依赖别人的了,沉思了一会,发现还是解决现下得到bug比较好,不太愿意动脑子自己写…
3.最后去了解了一下android.support.v4被弃用的细节,感觉被弃用了总有替代或者相应的解决办法的吧…说是被弃用,实际上就是移动到AndroidX库去了,这样可以帮助开发者利用最新的 Android 功能和改进,同时保持应用的兼容性和可维护性。有这样一个工具叫做:Jetifier ,用于自动迁移 Android 应用程序中的第三方库到 AndroidX。那么如果AndroidStudio里面有这种工具的话,就可以解决这个问题了。先去考虑是不是应该下载相应的插件,试过发现不行。于是想到了配置文件,试过很多次之后发现在gradle.properties文件中添加以下一行代码

android.enableJetifier=true

然后sync一下,问题就解决啦。
重新编译打包成apk运行,发现达到预期效果。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值