47

After migrating to Androidx packages using Android Studio menu option Refactor -> Refactor to Androidx...

I'm getting the following error:

Error inflating class androidx.constraintlayout.widget.ConstraintLayout
4

14 回答 14

109

确保约束布局更新到最新版本:

implementation 'androidx.constraintlayout:constraintlayout:2.1.3'

并替换您的 xml 标签名称

<androidx.constraintlayout.ConstraintLayout>

<androidx.constraintlayout.widget.ConstraintLayout>

在使用此快捷方式出现的每个地方:

窗户:CTRL+ SHIFT+R

麦克:COMMAND+ SHIFT+R

于 2018-10-20T06:32:54.210 回答
34

在 AndroidStudio 3.3 RC2 中,我通过升级解决了它 -

implementation 'androidx.constraintlayout:constraintlayout:1.1.2'

implementation 'androidx.constraintlayout:constraintlayout:1.1.3'

在 build.gradle 中(模块:app)

注意: 此解决方案也适用于发布版本 3.3(根据 FireZenk 的以下评论)、3.5.2(根据 user2350644 的以下评论)

于 2018-12-14T07:07:59.743 回答
24

Just replace

<androidx.constraintlayout.ConstraintLayout>

with

<androidx.constraintlayout.widget.ConstraintLayout>

In your project's xml files.

You can use Replace in Path shortcut in mac (⇧⌘F or ⇧⌘R) and windows (Ctrl+Shift+R)

enter image description here

于 2018-06-10T12:44:15.363 回答
10

好吧,就我而言,我尝试了解决方案 1,但仍然无法正常工作。然后我使用了解决方案 2解决方案 1


解决方案 1

ConstraintLayout更新应用级别build.gradle文件中的当前版本。

implementation 'androidx.constraintlayout:constraintlayout:1.1.2'

进入

implementation 'androidx.constraintlayout:constraintlayout:1.1.3'

解决方案 2

使缓存无效并重新启动 Android Studio(如果在应用解决方案 1后仍然无法正常工作)。

文件无效缓存/重新启动无效并重新启动

我使用了它们,对我来说效果很好。

注意: 解决方案 1很重要。

于 2019-02-21T22:56:01.320 回答
4

I've also face this issue. This issue occur only for constraintlayout dependecy version. Use 1.1.3 version & hope your issue will be solved:

implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
于 2019-02-25T13:11:01.550 回答
3

添加ConstraintLayout有两种方式:

implementation 'com.android.support.constraint:constraint-layout:2.0.0-alpha3'

那么你需要像这样使用它:

<android.support.constraint.ConstraintLayout
        ...>

</android.support.constraint.ConstraintLayout>

或使用 androidx:

implementation 'androidx.constraintlayout:constraintlayout:2.0.0-alpha3'

那么你需要使用

<androidx.constraintlayout.widget.ConstraintLayout
        ...
        >

</androidx.constraintlayout.widget.ConstraintLayout>

不要混合这两个。

于 2019-02-28T14:07:41.793 回答
2

由于 Android Studio 更新到 3.3 会弹出这个错误。我通过build.gradle在应用程序级别升级约束布局的版本来解决它:

implementation 'androidx.constraintlayout:constraintlayout:1.1.2'

implementation 'androidx.constraintlayout:constraintlayout:1.1.3'

于 2019-01-24T11:47:29.413 回答
1

我使用 Android Studio 4.1 和这个库进行约束布局:

实现'androidx.constraintlayout:constraintlayout:2.0.4'

它于 20 年 11 月 9 日更新,并且在膨胀约束布局时出现了同样的错误。

在我的情况下,我的三星 a40 应用程序可以工作,但我的中兴 nubia n1 应用程序立即崩溃。我认为我的布局背景图像存在问题,因为我的 png 图像对于屏幕分辨率与三星 a40 不同的旧设备来说太大了。我通过文件资源管理器(可绘制 - 右键单击​​ - 在资源管理器中显示)导入了背景 png 图像,实际上存在问题。

我尝试使用 Android Drawable Importer 导入图像,但我注意到这个插件在 Android Studio 上不再工作。

与安卓绘图导入器相关的解决方案:

如果您已经在 Android Studio 上安装了 Android Drawable Importer,请在开始修复过程之前将其卸载。要修复 Android Drawable Importer,您需要 ADI-hack-plugin,您可以通过关注 Thomas Samoul的这个 youtube 视频获得它。

修复 Android Drawable Importer 后,只需使用它导入您的图像,一切都会正常工作。

于 2020-11-09T22:15:21.380 回答
1

我遇到了同样的问题,上面的解决方案都没有奏效。这个问题其实是由于我切换到 NoActionBar 主题,而应用程序使用 ActionBar 来 setTitle() 时抛出的空指针异常引起的。链接的堆栈溢出答案帮助我弄清楚了

于 2021-05-12T14:58:16.257 回答
0

在 AndroidStudio 3.4 我不得不降级到

implementation 'androidx.constraintlayout:constraintlayout:1.1.2'

让它再次工作。

于 2019-04-19T09:22:23.100 回答
0

Android Studio 更新到 3.3 版。请移除之前版本的约束布局

我的案例使用了这个

implementation 'androidx.constraintlayout:constraintlayout:2.0.0-alpha3'

谢谢

于 2019-01-25T10:18:43.170 回答
0

就我而言,我只需要将androidx依赖项更新到最新版本。

编辑 在 build.gradle (app) 你必须寻找包含 androidx 的依赖项。Android Studio 将向您展示有关这些依赖项的最新版本的信息。使用该信息只是更改依赖版本。

于 2019-02-01T09:38:13.723 回答
0

奇怪的是,当我将androidx.appcompat:...'库升级到

'androidx.appcompat:appcompat:1.1.0-alpha05''androidx.constraintlayout:constraintlayout:1.1.3'Android Studio 3.3 上的约束布局版本

于 2019-06-02T07:59:34.757 回答
0

对于那些尝试了以上所有方法都没有白费的人,降级 constraintLayout 对我有用(在我绞尽脑汁 3 天在阳光下尝试一切之后)。

implementation 'androidx.constraintlayout:constraintlayout:2.1.0'

implementation 'androidx.constraintlayout:constraintlayout:2.0.0'
于 2021-09-12T17:27:23.973 回答