Ошибка надувания ConstraintLayout в андроид студии

У меня проблемы с Android Studio. Недавно я обновил менеджер SDK для включения;

compile 'com.android.support.constraint:constraint-layout:1.0.0-beta5'

classpath -

 classpath 'com.android.tools.build:gradle:2.2.3'

Проект строит отлично. Intellisense и документация прекрасно работают. Но когда я пытаюсь запустить (отлаживать) приложение на своем телефоне, я получаю эту ошибку;

 Caused by: android.view.InflateException: Binary XML file line #2:
 Binary XML file line #2: Error inflating class ConstraintLayout
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:539)
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
                   at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
                   at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:443)
                   at android.app.Activity.setContentView(Activity.java:2172)

Я синхронизировал град. Я перезапустил Android Studio. Я очистил и перестроил проект.

Есть какие нибудь идеи как это починить? благодарю!

-edit-XML выглядит так:

<ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/PLAY_PARENT"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/greenfelt2"
android:padding="0dp">

Ответы

Ответ 1

Вы должны добавить следующее:

<android.support.constraint.ConstraintLayout
 xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:app="http://schemas.android.com/apk/res-auto"
 xmlns:tools="http://schemas.android.com/tools"
 android:id="@+id/PLAY_PARENT"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:background="@drawable/greenfelt2"
 android:padding="0dp">

compile 'com.android.support.constraint:constraint-layout:1.0.2'

Для последней проверки релиза здесь

Ответ 2

Это может быть ряд причин

  1. проблема версии зависимости (такая же как выше)

  2. проблема нехватки памяти: в моем случае я добавил изображение с высоким разрешением для фона макета ограничений или на той же странице (файл .xml) мы использовали изображение с высоким разрешением для любого источника просмотра изображений.

Ответ 3

Я не знаю, было ли это решение 2 с половиной года назад, но сегодня у меня была похожая ошибка. Нашел ответ прямо здесь: Ошибка надувания класса androidx.constraintlayout.ConstraintLayout после перехода на androidx

По сути, в них должны быть переименованы только теги xml компоновки ограничений ->

androidx.constraintlayout.widget.ConstraintLayout

Ответ 4

У меня была такая же проблема, приложение работает правильно в других телефонах, но получил это исключение с устройством ZTE. Я исправил это, отключив Instant Run в Android Studio.

Ответ 5

У меня были такие же проблемы. Для меня причина в моем проекте " Автоматическое преобразование сторонних библиотек для использования AndroidXhas ". Что делать? просто следуя двум шагам:

1-й шаг: пожалуйста, проверьте свои gradle.properties, если вы видите следующие строки, у вас могут быть те же проблемы, что и у меня. Вы можете сначала удалить их.

android.useAndroidX=true
android.enableJetifier=true

2-й шаг: в основной деятельности я изменился

import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;

в

import android.support.v4.app.ActivityCompat;
import android.support.v4.content.ContextCompat;

Все работает внезапно!