android.view.InflateException: строка двоичного файла XML (которая не существует) - PullRequest
0 голосов
/ 11 ноября 2018

У меня есть этот макет:

<?xml version="1.0" encoding="utf-8"?>
<merge>
  <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/has_selected_account"
      android:layout_width="match_parent"
      android:layout_height="wrap_content">

    <TextView
        android:id="@+id/account_display_name"
        android:layout_width="wrap_content"
        android:layout_marginTop="@dimen/account_menu_name_and_display_vertical_padding"
        android:layout_marginBottom="@dimen/account_menu_name_and_display_vertical_padding"
        app:layout_constraintBottom_toTopOf="@+id/account_name"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_chainStyle="packed"
        tools:text="DisplayNameIsLongSoItShouldBeTruncatedAtSomePoint"/>
    <TextView
        android:id="@+id/account_name"
        android:layout_width="wrap_content"
        android:layout_marginTop="@dimen/account_menu_name_and_display_vertical_padding"
        android:layout_marginBottom="@dimen/account_menu_name_and_display_vertical_padding"
        android:includeFontPadding="false"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/account_display_name"
        tools:text="emailisverylongaswellwewantittogettruncated@gmail.longdomain.com"/>
  </android.support.constraint.ConstraintLayout>
</merge>

И я получаю очень общую ошибку инфляции:

 Caused by: android.view.InflateException: Binary XML file line #39: Error inflating class com.me.AccountParticle
    at android.view.LayoutInflater.createView(Layo

(Вырезать вот так)

Я попытался упростить мой XML. Как я могу справиться с ошибкой инфляции?

Плюс мой макет XML не похож на # 39 так где это относится?

Ответы [ 2 ]

0 голосов
/ 11 ноября 2018

Пожалуйста, используйте это.

<?xml version="1.0" encoding="utf-8"?>
<merge>
  <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/has_selected_account"
      android:layout_width="match_parent"
      android:layout_height="wrap_content">

    <TextView
        android:id="@+id/account_display_name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="@dimen/account_menu_name_and_display_vertical_padding"
        android:layout_marginBottom="@dimen/account_menu_name_and_display_vertical_padding"
        app:layout_constraintBottom_toTopOf="@+id/account_name"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_chainStyle="packed"
        tools:text="DisplayNameIsLongSoItShouldBeTruncatedAtSomePoint"/>
    <TextView
        android:id="@+id/account_name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="@dimen/account_menu_name_and_display_vertical_padding"
        android:layout_marginBottom="@dimen/account_menu_name_and_display_vertical_padding"
        android:includeFontPadding="false"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/account_display_name"
        tools:text="emailisverylongaswellwewantittogettruncated@gmail.longdomain.com"/>
  </android.support.constraint.ConstraintLayout>
</merge>
0 голосов
/ 11 ноября 2018

Вам не хватает android:layout_height для обоих TextView, вот как вы получаете ошибку инфляции. Когда представление раздувается, ему нужно разрешить тег merge, возможно, другим классом или методом, который, похоже, имеет другой способ синтаксического анализа ошибок. В противном случае вы бы увидели более ясную ошибку с отсутствующим android:layout_height.

...