В настоящее время я пытаюсь отлаживать свое приложение для Android. Я построил первый экран, и он использует Tab Host. Я внес несколько незначительных изменений в TabHost, чтобы добавить несколько дополнительных методов (полный исходный код будет следовать) для работы с некоторыми другими частями моего приложения.
Однако, когда я пытаюсь запустить следующее, я получаю исключение нулевого указателя на Inflate, и это на самом деле ничего не говорит мне о том, почему. Я загрузил полный исходный код Android для своего SDK и добавил его в eclipse, чтобы пройти через процесс инфляции и выяснить, могу ли я таким образом получить больше информации об ошибке.
Я точно нашел, какая строка вызывала ошибку (источник указан ниже), но при переходе через отладчик произошло что-то странное. Логика представляет собой случай if/else, где if == true он должен возвращать объект New Parser(), я запустил этот код, и он успешно прошел через конструктор Parser, но после возврата из него следующая инструкция вышла прямо из группа операторов на строку ниже возвращает null.
Конструктор, похоже, работает правильно (он находится в XmlBlock.java, если вам интересно), но он по-прежнему переходит на следующую строку и возвращает null, и я понятия не имею, почему это так. Я искал решения, но пока единственная подобная проблема возникла у кого-то, использующего TabActivity, который не подходит для моего приложения. Мне нужно, чтобы вкладки и их представления генерировались объектами, которые я определил в своем проекте (аналогично контроллерам представлений в стиле IOS), а не отдельными процессами с использованием намерений для запуска новых действий.
Может кто-нибудь взглянуть на мой источник и сказать мне, что я здесь делаю неправильно, потому что никто другой не может сказать мне, в чем проблема? Вот еще одна прямая ссылка на соответствующий источник: http://pastebin.com/9VRE2UGW.