Error inflating class android widget listview

Ошибка раздувания фрагмента класса

Я получаю сообщение об ошибке

когда я переключаюсь через портрет и режим ландшафта. Я использую фрагменты. Мой xml:

Если я переключаюсь в альбомном и портретном режимах, все работает нормально. Но когда я нажимаю на свой фрагмент (и вижу свой фрагмент), а затем переключаюсь на другой режим, я получаю ошибку. Любая идея, как я могу ее решить? Нашли здесь несколько ответов, но ни один из них не помог мне.

ОТВЕТЫ

Ответ 1

Как сказал гдемирчян, обязательно используйте:

И также убедитесь, что активность, использующая фрагмент (ы), расширяет FragmentActivity вместо обычного Activity ,

чтобы получить класс FragmentActivity .

Ответ 2

Исключение android.view.InflateException: Binary XML file line: #. Error inflating class fragment может произойти, если вы управляете с помощью getActivity() внутри вашего фрагмента до onActivityCreated() , вызываемого. В этом случае вы получаете неправильную ссылку на действие и не можете полагаться на это.

Например, следующий шаблон неверен:

Правильный шаблон # 1

Правильный шаблон # 2

Ответ 3

Убедитесь, что ваш Activity расширяет FragmentActivity .

Ответ 4

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

25 решений по этой проблеме. Никто не работал до тех пор, пока в 2AM я не узнал, что я пропустил эту строку в манифесте приложений xml:

Ответ 5

У меня была та же проблема. Решением для меня был порядок super.onCreate и setContentView в FragmentActivity

Следующий порядок работает нормально:

Ответ 6

Фрагменты не могут быть вложены в XML

Узнал это трудным способом — если вы вставляете тег на основе XML, внутри (потенциально) динамически загружаемого фрагмента из FragmentManager , тогда вы начинаете получать странные ошибки, пытаясь раздуть ваш фрагмент xml.

Оказывается, что это не поддерживается — он будет работать нормально, если вы сделаете это с помощью подхода FragmentManager .

Я получал эту проблему, потому что я пытался загрузить фрагмент внутри из xml, и это вызвало сбой в методе onCreateView() , когда я вынул задний стек.

Ответ 7

У меня была та же проблема, с которой вы сталкиваетесь. Ни один из советов на вершине не помог мне. Позже я обнаружил, что все, что мне нужно было сделать, это исправить мои импорт из:

Ответ 8

Убедитесь, что в методе onCreateView фрагмента нет исключения. Если в этом методе возникает какое-либо исключение, logcat не будет показывать точные сведения об исключении, вместо этого он всегда показывает сообщение:

Читайте также:  Детский режим для android

Ответ 9

Ответ 10

Если ваш TaskDetailsFragment расширяющийся android.app.Fragment , измените его на onCreateView() .

Верните представление, которое вы хотите показать в фрагменте, или преобразуйте макет для просмотра с помощью LayoutInflater и верните его.

Надеюсь, что это сработает.:)

Ответ 11

Проверьте путь к классу, это может быть инфлятор представления, который не смог найти определение вашего класса, как определено в вашем xml class= «de.androidbuch.activiti.task.TaskDetailsFragment» вышеуказанный путь может быть неправильным.

Ответ 12

Для меня это было после прокрутки в трассе стека, я обнаружил, что у меня нет разрешения на android.permission.ACCESS_NETWORK_STATE

после добавления этого разрешения было исправлено

Ответ 13

Я получал эту ошибку по разным причинам.

Шаги для воспроизведения:

> Моя проблема заключалась в том, что я создал совершенно новое приложение.

> Затем я сгенерировал пользовательский фрагмент из меню File

> Продолжалось настраивать фрагмент, добавляя макеты и кнопки и т.д.

> Ссылка на новый пользовательский фрагмент в автоматически созданном файле activity_my.xml, который был создан для меня при создании приложения. Это позволило XML генерировать объекты для меня.

Heres — это уловка при создании пользовательского фрагмента через File

> New File Menu, который автоматически генерирует заглушку функции интерфейса и помещает его в конец файла класса фрагмента.

Это означает, что ваш класс MyActivity должен реализовать этот интерфейс. Если это не так, вышеуказанная ошибка возникает только при ссылке на фрагмент из xml. Полностью удалив ссылку на фрагмент в XML и создав фрагмент через код в файле класса MyActivity.java, Logcat генерирует более сжатую ошибку, подробно объясняющую проблему и жалующуюся на интерфейс. Это показано в разделе «Шаблон проекта + фрагмент». Хотя,

Ответ 14

Если у вас есть отдельные файлы макета для портретных и ландшафтных режимов и вы получаете ошибку инфляции, когда вы меняете ориентацию после нажатия на элемент, скорее всего, расхождение между вашими файлами макета.

Когда вы получаете сообщение об ошибке, это только когда вы нажимаете элемент в альбомном режиме или только в портретном режиме или на обоих? В вашей работе TaskDetailsFragment используется файл макета, который может иметь расхождения между ландшафтными и портретными режимами?

Ответ 15

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

Я сделал это, и мой код работает!

Ответ 16

Моя проблема в этом случае была простым экземпляром исключения тупого нулевого указателя в одном из моих методов, который был вызван позже на жизненном цикле. Это вызывало для меня исключение «Разрыв кода класса». Короче говоря, не забудьте проверить дальнейшее отслеживание трассы стека исключений для возможной причины.

Как только я разрешил исключение нулевого указателя, мой фрагмент загрузился нормально.

Ответ 17

Если вы не хотите ничего менять и идите с тегом фрагмента

Читайте также:  Control home with android

Ответ 18

Имел тот же тип ошибки, где отображалось точно такое же сообщение об ошибке в logcat. Мне нужно было внести изменения в путь сборки Java, расположенный в Project->Properties . Я включил такие библиотеки Google Maps, как android-support-v4.jar и google-play-services.jar ; однако я отсутствовал, включая их, в ‘Build class path’ в меню опций ‘Order and Export’ . Возможно, ошибка здесь.

Попробуйте включить библиотеки в путь класса сборки.

Порядок построения классов может также вызвать ошибку, поэтому мой совет также должен попытаться изменить порядок пути построения. Ошибка исчезла, когда я использовал следующий порядок: ‘my_project_name/src’->’my_project_name/gen’->’Android Private Libraries’ . Последняя единица содержит файлы jar, упомянутые ранее.

Ответ 19

Если вы добавляете Fragment статически, то есть в xml, то, возможно, вы пропустили реализацию OnFragmentInteractionListener в своем классе Activity . Тогда реализация интерфейса решит проблему. Если вы добавляете Fragment динамически, то есть в класс java, это не решение. Поскольку сама IDE не позволит вам работать без реализации необходимых интерфейсов.

Ответ 20

В вашем XML файле просто используйте вместо тега. Надуватель пытается создать файл android.app.Fragment, из которого не удастся выполнить API

Ответ 21

Я получил эту ошибку при использовании ListFragment, но идентификатор списка был listView1 вместо списка.

‘В вашем контенте должен быть ListView, атрибут id которого «android.R.id.list»

Ответ 22

убедитесь, что u использовал этот

Ответ 23

Просто эта ошибка. Причиной моей была видимость моего класса фрагментов. Он был установлен в значение по умолчанию, должен быть общедоступным.

Ответ 24

Не могли бы вы разместить фрагменты onCreate и onCreateView ? У меня было точно такое же исключение, вызванное исключением в методе onCreate , когда я исправил эту проблему, он исправил фрагмент класса раздувания Error.

Ответ 25

У меня была аналогичная проблема; после запуска примера AdMob, я попытался вставить Объявления в свое приложение, вызвав эту ошибку:

Решение: вы не можете вставить фрагмент для Ad в ListActivity. Вместо этого я мог бы добавить его в FragmentActivity и в ActionBarActivity без каких-либо проблем.

Мое предложение: начните с примера AdMob и добавьте в него свое существующее приложение: я бы сэкономил много времени.

Ответ 26

Я получал эту ошибку в студии Android, проблема заключалась в том, что мой фрагмент имел относительный макет, а код в функции OnCreateView был

Ваш код делает то же самое?

Ответ 27

Если вы хотите наследовать AppCompatActivity, тогда вы можете сделать что-то вроде этого — В действии xml используйте FrameLayout, как это —

и в активности onCreate —

Ответ 28

Я получил ту же ошибку, но моя проблема заключалась в том, что у моего фрагмента не было идентификатора в макете xml родительской активности.

Ответ 29

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

Если все происходит так же, как и код google, тогда проверьте файл манифеста в моем случае. Я добавил ключ geo и ключ карты, почему возникает исключение,

Примечание. Не добавляйте два ключа в файл манифеста. Удалите карту.

Читайте также:  Как восстановить данные со сломанного андроида

выше кода и добавьте этот код.

Ответ 30

Убедитесь, что ваша активность расширяет FragmentActivity или AppCompatActivity

Источник

InflateException, Error inflating class TextView #1183

Comments

genericjohndoe commented Mar 10, 2018

Step 1: Are you in the right place?

Step 2: Describe your environment

  • Android device: Note 8
  • Android OS version: Api 25
  • Google Play Services version: 11.8.0
  • Firebase/Play Services SDK version: 11.8.0
  • FirebaseUI version: 3.2.2

Step 3: Describe the problem:

I recieved the following error upon start up
Unable to start activity ComponentInfo: android.view.InflateException: Binary XML file line #29: Binary XML file line #29: Error inflating class TextView

Steps to reproduce:

  1. Start the app, the app should fail upon start up

Observed Results:

03-09 16:04:12.294 18290-18290/? E/AndroidRuntime: FATAL EXCEPTION: main Process: com.udacity.gradle.builditbigger, PID: 18290 java.lang.RuntimeException: Unable to start activity ComponentInfo: android.view.InflateException: Binary XML file line #29: Binary XML file line #29: Error inflating class TextView at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3003) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3064) at android.app.ActivityThread.-wrap14(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1659) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6823) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1563) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1451) Caused by: android.view.InflateException: Binary XML file line #29: Binary XML file line #29: Error inflating class TextView Caused by: android.view.InflateException: Binary XML file line #29: Error inflating class TextView Caused by: java.lang.UnsupportedOperationException: Failed to resolve attribute at index 6: TypedValue at android.content.res.TypedArray.getColorStateList(TypedArray.java:545) at android.widget.TextView. (TextView.java:1137) at android.widget.TextView. (TextView.java:1038) at android.support.v7.widget.AppCompatTextView. (AppCompatTextView.java:75) at android.support.v7.widget.AppCompatTextView. (AppCompatTextView.java:71) at android.support.v7.app.AppCompatViewInflater.createView(AppCompatViewInflater.java:103) at android.support.v7.app.AppCompatDelegateImplV9.createView(AppCompatDelegateImplV9.java:1024) at android.support.v7.app.AppCompatDelegateImplV9.onCreateView(AppCompatDelegateImplV9.java:1081) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:776) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:734) at android.view.LayoutInflater.rInflate(LayoutInflater.java:865) at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:828) at android.view.LayoutInflater.inflate(LayoutInflater.java:525) at android.view.LayoutInflater.inflate(LayoutInflater.java:427) at android.view.LayoutInflater.inflate(LayoutInflater.java:378) at android.support.v7.app.AppCompatDelegateImplV9.createSubDecor(AppCompatDelegateImplV9.java:383) at android.support.v7.app.AppCompatDelegateImplV9.ensureSubDecor(AppCompatDelegateImplV9.java:323) at android.support.v7.app.AppCompatDelegateImplV9.onPostCreate(AppCompatDelegateImplV9.java:170) at android.support.v7.app.AppCompatActivity.onPostCreate(AppCompatActivity.java:97) at android.app.Instrumentation.callActivityOnPostCreate(Instrumentation.java:1207) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2975) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3064) at android.app.ActivityThread.-wrap14(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1659) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6823) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1563) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1451) 03-09 16:04:13.142 18330-18330/? E/AndroidRuntime: FATAL EXCEPTION: main Process: com.udacity.gradle.builditbigger, PID: 18330 java.lang.RuntimeException: Unable to start activity ComponentInfo: java.lang.UnsupportedOperationException: Failed to resolve attribute at index 6: TypedValue at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3003) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3064) at android.app.ActivityThread.-wrap14(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1659) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6823) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1563) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1451) Caused by: java.lang.UnsupportedOperationException: Failed to resolve attribute at index 6: TypedValue at android.content.res.TypedArray.getColorStateList(TypedArray.java:545) at android.widget.TextView. (TextView.java:1137) at android.widget.TextView. (TextView.java:1038) at android.support.v7.widget.AppCompatTextView. (AppCompatTextView.java:75) at android.support.v7.widget.AppCompatTextView. (AppCompatTextView.java:71) at android.support.v7.widget.AppCompatTextView. (AppCompatTextView.java:67) at android.support.v7.widget.Toolbar.setTitle(Toolbar.java:753) at android.support.v7.widget.ToolbarWidgetWrapper.setTitleInt(ToolbarWidgetWrapper.java:261) at android.support.v7.widget.ToolbarWidgetWrapper.setWindowTitle(ToolbarWidgetWrapper.java:243) at android.support.v7.widget.ActionBarOverlayLayout.setWindowTitle(ActionBarOverlayLayout.java:621) at android.support.v7.app.AppCompatDelegateImplV9.onTitleChanged(AppCompatDelegateImplV9.java:631) at android.support.v7.app.AppCompatDelegateImplV9.ensureSubDecor(AppCompatDelegateImplV9.java:328) at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:284) at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139) at com.firebase.ui.auth.ui.idp.AuthMethodPickerActivity.onCreate(AuthMethodPickerActivity.java:84) at android.app.Activity.performCreate(Activity.java:6977) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1126) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2946) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3064) at android.app.ActivityThread.-wrap14(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1659) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:154) at android.app.ActivityThread.main(ActivityThread.java:6823) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1563) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1451)

Expected Results:

  • i expected to show the normal login screen like it did in the past.

Relevant Code:

The text was updated successfully, but these errors were encountered:

Источник

Оцените статью