首页 > 解决方案 > android.view.InflateException:二进制 XML 文件行(不存在)

问题描述

我有这个布局:

<?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 这样的东西,那么它指的是哪里?

标签: androidlayoutandroid-constraintlayoutlayout-inflater

解决方案


android:layout_height两者都缺少,这TextView就是您获得视图通货膨胀错误的方式。当视图被膨胀时,它merge可能需要通过另一个类或方法来解析标签,这似乎有不同的解析错误的方式。否则,您会看到更清晰android:layout_height的丢失错误。


推荐阅读