Ответ 1
Это была типичная ошибка, когда кто-то изучал новый язык /API. Я забыл правильно настроить представление.
UIView *controllersView = [myViewController view];
[window addSubview:controllersView];
Я только начал изучать iOS, и теперь у меня есть sigabrt для моей основной функции. Ошибка инициируется вызовом:
int retVal = UIApplicationMain(argc, argv, nil, nil);
Поскольку я очень новичок в программировании на iOS, я не знаю, что могло бы вызвать эту ошибку. Одна вещь, которую я нашел в моем стоп-лотке, вызывает следующее исключение: dyld_stub_objc_exception_throw Что может вызвать эту ошибку?
Это была типичная ошибка, когда кто-то изучал новый язык /API. Я забыл правильно настроить представление.
UIView *controllersView = [myViewController view];
[window addSubview:controllersView];
У меня была эта проблема в X-Code 4.2, и проблема была в том, что он не смог найти мою раскадровку. Отвратительная часть заключалась в том, что не было никаких указаний на то, каково фактическое исключение. Я смог получить исключение в журнале, добавив try/catch к моей основной функции. (Обратите внимание, что я использую ARC, поэтому, если вы не используете ARC, ваш основной будет немного отличаться от try catch)
int main(int argc, char *argv[])
{
int retVal = 0;
@autoreleasepool {
NSString *classString = NSStringFromClass([sortaAppDelegate class]);
@try {
retVal = UIApplicationMain(argc, argv, nil, classString);
}
@catch (NSException *exception) {
NSLog(@"Exception - %@",[exception description]);
exit(EXIT_FAILURE);
}
}
return retVal;
}
UIApplicationMain
в основном запускает остальную часть вашего приложения, поэтому фактическая причина сбоя может быть в любом месте вашего приложения. Возможно, вам придется искать дальше в стеке вызовов.
Однако я отмечаю, что вы передаете nil
в качестве последних двух параметров. Первым nil
является аргумент principalClassName
, который может легально быть нулевым, если вы хотите, чтобы UIApplication
был основным классом. Второй nil
- имя делегата приложения; вы должны передать nil
, если вы загрузите делегата из основного ниба. Вы? Если вы этого не сделаете, это может быть проблемой (я не могу сказать, что я когда-либо вызывал эту функцию с обоими этими аргументами nil
).