requireActivity()、requireContext() 和 requireFragmentManager() 不适用于 AndroidX

requireActivity(), requireContext() and requireFragmentManager() wont work with AndroidX

我一直致力于将包含 DataBinding 的项目更新到新的 AndroidX 包。滥用 DataBinding SafeUnbox 方法存在许多问题,但这些问题已解决,我目前无法构建,因为 AndroidX 似乎不支持 requireActivityrequireContextrequireFragmentManager方法。

我的 android.enableJetifier=trueandroid.useAndroidX=true 在我的 gradle 属性中,并修复了它出现的小问题,但不需要从 android.support.v4.app.Fragment 更改(谢天谢地 - 因为trello.rxlifecycle 之类的库然后中断)

所以即使Fragment和Activityclasses/imports没有变化,我也不能再使用require方法了。有解决办法吗?

我是在使用 Android Studio 3.1.2 时第一次遇到这种情况。没有出现其他构建问题。在我 将 Android Studio 升级到 3.2 并使用迁移工具后(Refactor -> Migrate to AndroidX) 我看到其他以前隐藏的构建问题。一旦这些其他(隐藏的)问题得到解决,我就能够构建项目,尽管 IDE 显示这些方法有错误..

注意:即使我可以正常构建,对 requireActivity 的调用在 Android Studio 中仍然显示为红色,所以如果您看到这个,我鼓励您尝试构建无论如何