Android.view.inflateexception двоичная xml строка строки # 1 ошибка раздувания класса android.widget.relativeLayout

Я новичок в android.
Я только что создал новый макет с одной текстовой панелью и двумя кнопками, но это не сработало, я отправляю трассировку стека и мой файл относительного макета любой идеи об этом? Я видел там тот же самый вопрос, который говорит, что он уменьшает размер, пригодный для рисования. Но это не помогло в моем случае, или я не очень много о том, как уменьшить его. Вот некоторые из моих трассировок стека:

  D/AndroidRuntime(1192): Shutting down VM
W/dalvikvm(1192): threadid=1: thread exiting with uncaught exception (group=0xb60cc4f0)
E/AndroidRuntime(1192): FATAL EXCEPTION: main
E/AndroidRuntime(1192): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.hellomissworld/com.example.hellomissworld.MainActivity}: android.view.InflateException: Binary XML file line #1: Error inflating class android.widget.RelativeLayout
E/AndroidRuntime(1192):at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647)
12-24 18:58:31.451: E/AndroidRuntime(1192):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
12-24 18:58:31.451: E/AndroidRuntime(1192):     at android.app.ActivityThread.access$1500(ActivityThread.java:117)
12-24 18:58:31.451: E/AndroidRuntime(1192):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)

и это файл xml выкладки:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:background="@layout/activity_main"
    android:focusable="false"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <EditText
        android:id="@+id/editText1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_marginTop="24dp"
        android:ems="10"
        android:inputType="text" >

        <requestFocus />
    </EditText>

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/editText1"
        android:layout_alignParentTop="true"
        android:text="@string/typehere"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignRight="@+id/editText1"
        android:layout_below="@+id/editText1"
        android:text="@string/ok" />

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/editText1"
        android:layout_toLeftOf="@+id/button2"
        android:text="@string/cancel" />

</RelativeLayout>

Ответы

Ответ 1

Вы должны изменить

android:background="@layout/activity_main"

к

android:background="@drawable/yourImageName"

Ответ 2

Иногда эта ошибка также появляется, когда вы используете большое изображение, которое на самом деле слишком велико, что приводит к ошибке памяти и приводит к сбою вашего приложения. Если вы используете фоновые изображения или какие-либо крупные активы, убедитесь, что они существуют и что они не слишком большие, и тогда вы будете петь под дождем!

Ответ 3

эта строка указывает на первую строку макета:

android.view.InflateException: Binary XML file line #1: Error inflating class 

а в первой строке есть объявление Relative layout:

Итак, ошибка указана на android:background, и это неправильный способ установки фона макета:

android:background="@layout/activity_main"

это должно быть цветное или отображаемое изображение

android:background="@color/backgroundColor" или android:background="#012345"

или

android:background="@drawable/backgroundimg"

Ответ 4

Это неверно android:background="@layout/activity_main" должно быть

android:background="@color/backgroundColor" 

или

android:background="@drawable/backgroundimg"

Ответ 5

В моем случае было исправлено изменение местоположения моего color.xml

Когда я скопировал его из какого-то другого моего проекта и ввел его в новый проект, Android Studio поместила его в папку v21, то есть мой эмулятор (v19) не смог добраться до файла ресурсов color.xml.

Я сделал следующее, чтобы исправить это:

  • Щелкните правой кнопкой мыши на color.xml.
  • Выберите Refactor > Move.
  • В открывшемся диалоговом окне удалите суффикс -v21.

Теперь мой "старый" эмулятор смог прочитать файл.

Надеюсь, это поможет.

Ответ 6

У меня была та же проблема - но в активности, которая не имела фонового изображения.

Я узнал, что редактор графического интерфейса (при использовании Eclipse - я не знаю об Android Studio) иногда добавляет свойство без ошибок:

android:background="@layout/activity_main"

Я не уверен, почему редактор делает это - возможно, это ошибка или просто ошибка использования.

Однако если активность не имеет фонового изображения, все свойство просто необходимо удалить!

Ответ 7

Если вы используете Службы Google Play и показываете Карты, вы должны добавить метатег в AndroidManifest.xml

**<meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />**