Завершение приложения из-за необработанного исключения / / SIGABRT // C ++ - PullRequest
1 голос
/ 26 февраля 2010

Я только что закончил одно из своих приложений, когда получил это сообщение. Я не могу на всю жизнь понять, что не так.

    (gdb) continue
2010-02-26 14:05:51.443 BrainTester[2638:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIViewController _loadViewFromNibNamed:bundle:] was unable to load a nib named "SplitSecondViewController"'
2010-02-26 14:05:51.452 BrainTester[2638:207] Stack: (
    861696817,
    860329709,
    861252493,
    861252395,
    835170725,
    835170141,
    835074651,
    13515,
    834774231,
    834773467,
    835014237,
    835012689,
    835011495,
    861063661,
    861449261,
    861447005,
    834770767,
    834765939,
    11025,
    10920
)
terminate called after throwing an instance of 'NSException'
Program r

принятый сигнал: “SIGABRT”. (ГБД)

Если кто-то может помочь, любая помощь приветствуется.

Ответы [ 5 ]

0 голосов
/ 26 мая 2010

У меня была та же проблема, и ответ Марио решил ее для меня. Я конвертировал приложение для iPhone для работы как на телефоне, так и на iPad. По какой-то причине он не поместил новый xib-файл в ресурсы Bundle Copy под целевым объектом. Как только я добавил его, перетащив файл XIB из каталога Resources-iPad вниз, он все исправил.

Спасибо, Марио!

0 голосов
/ 27 апреля 2010

Посмотрите в Xcode на «Targets» -> YourAppName-> Copy Bundle Resources

Существует ли там xib-файл ??

0 голосов
/ 26 февраля 2010

Добавлен ли SplitSecondViewController.nib в проект и находится ли он в нормальном каталоге?

Кроме того, это исключение Objective C, а не исключение C ++.

0 голосов
/ 27 февраля 2010

Это может произойти, когда вы переименовываете файлы пера, но не распространяете изменение имени через проект. Переименовали ли вы SplitSecondViewController с момента последнего успешного запуска приложения?

Или, если вы удалили SplitSecondViewController на каком-то этапе, все еще могут быть ссылки на него в другом месте проекта. Откройте конструктор интерфейса и перейдите к инспектору соединений для главного окна. Если вы удалили SplitSecondViewController на каком-то этапе, убедитесь, что соединение с ним в инспекторе соединений удалено.

0 голосов
/ 26 февраля 2010

Вы, очевидно, создали исключение NSInvalidArgumentException и не перехватили его, вызвав таким образом std :: terminate () и завершив работу программы. Не будучи знакомым с iPhone SDK, я не могу больше помочь. Обратитесь к документации по API, чтобы узнать, откуда она могла быть выброшена.

Сообщение об ошибке означает, что объект UIViewController не смог выполнить сообщение _loadViewFromNibNamed с аргументом SplitSecondViewController, если мое чтение синтаксиса Objective-C ++ верно.

Извините, я не могу больше помочь ...

...