SIGABRT при запуске при использовании ios 5.1.1

Когда я использую тестовое устройство с iOS 5.1.1, я получаю sigabrt. Я думаю, мне нужен код, совместимый с ios 5.

При использовании точки останова исключения она останавливается на этой строке кода.

[self.window makeKeyAndVisible];

Вот код в моем appDelegate. Я мало что сделал в своем viewController, кроме добавления кнопки.

 self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    // Override point for customization after application launch.
    self.viewController = [[JHNViewController alloc] init];
    self.window.rootViewController = self.viewController;
    [self.window makeKeyAndVisible];
    return YES;

Если вы можете понять это, пожалуйста, объясните, потому что это ничего не значит для меня.

2013-03-08 08:53:38.367 HelloWorld[66084:707] * Завершение работы приложения из-за неперехваченного исключения "NSInvalidUnarchiveOperationException", причина: "Не удалось создать экземпляр класса с именем NSLayoutConstraint" * Стек вызовов первого броска: (0x30fe688f 0x37324259 0x30fe6789 0x30fe67ab 0x3095854d 0x309586bb 0x30958423 0x308e9001 0x308573c7 0x30734c59 0x306aac17 0x306a9461 0x3069be87 0x3070c7d5 0x44281 0x306a9cab 0x306a37dd 0x30671ac3 0x30671567 0x30670f3b 0x32fb722b 0x30fba523 0x30fba4c5 0x30fb9313 0x30f3c4a5 0x30f3c36d 0x306a286b 0x3069fcd5 0x43fe1 0x43f68) прекратить называемый бросать исключение (lldb)


person user1898829    schedule 08.03.2013    source источник
comment
не могли бы вы вставить StackTrace сбоя или отчет о сбое?   -  person Rajan Balana    schedule 08.03.2013


Ответы (2)


Как я вижу, Autolayout поддерживается для iOS 6.0+, и вы делаете свое приложение совместимым с ios 5.1.1. затем вам нужно удалить AutoLayout из XIB вашего Viewcontroller.

Сделайте одну вещь: viewController, который является вашим первым viewController, загружаемым в приложение. Перейдите к файловому инспектору XIB этого viewController. Удалить проверку автомакета. Все будет хорошо.

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

person Rajan Balana    schedule 08.03.2013
comment
Я снял флажок с автоматическим изменением размера подвидов, и он все равно дает ту же ошибку. - person user1898829; 08.03.2013
comment
@user1898829 user1898829 Вам не нужно снимать флажок Autoresize Subviews , перейдите в файловый инспектор XIB этого контроллера представления и снимите флажок Use Autolayout :) - person Rajan Balana; 08.03.2013

Вы должны удалить Auto layout опции из ваших .xib файлов в IB.

Auto layout поддерживается в iOS 6+, и ваше приложение жалуется, что:

«Не удалось создать экземпляр класса с именем NSLayoutConstraint»

person shannoga    schedule 08.03.2013