Мой код работает на небольших устройствах, но не работает на устройствах с большим экраном выше 5 дюймов

Мой код работает на небольших устройствах, но он не работает на устройствах с большим экраном выше 5 дюймов.

Структура папок макета следующая:

layout-land/homeactivity.xml
layout-small-land/homeactivity.xml
layout-large-land/homeactivity.xml
layout-xlarge-land/homeactivity.xml

И исключение:

12-17 12:26:10.811: E/AndroidRuntime(335): FATAL EXCEPTION: main 
12-17 12:26:10.811: E/AndroidRuntime(335): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.pelkin.peekzoo/com.pelkin.peekzoo.Animals}: android.view.InflateException: Binary XML file line #22: Error inflating class 
12-17 12:26:10.811: E/AndroidRuntime(335): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647) 
12-17 12:26:10.811: E/AndroidRuntime(335): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)

3 ответа

Решение

Проверьте все идентификаторы каждого представления во всех XML. Это должно быть одинаково во всех XML-файлах.

Были ли у вас все изображения разных размеров? Если вам не хватает значков или изображений большего размера: drawable-xxhdpi и drawable-xhdpi, это может дать вам нулевой указатель. Так как он пытается загрузить изображение, которого нет в этом размере.

Идентификатор может отличаться в layout-large-land/homeactivity.xml или layout-xlarge-land/homeactivity.xml макета. перепроверьте свои идентификаторы.

Другие вопросы по тегам