iOS, как отлаживать сбои без трассировки стека, как: [__NSArrayM objectAtIndex:]: индекс 0 за пределами для пустого массива? - PullRequest
8 голосов
/ 20 декабря 2011

Я пытаюсь закрыть модальный контроллер вида и получаю следующую ошибку:

* Завершение работы приложения из-за необработанного исключения 'NSRangeException', причина: '* - [__ NSArrayMobjectAtIndex:]: индекс 0 вне границ для пустого массива '

В какой-то момент я потратил 4 часа, пытаясь отладить такую ​​ошибку.Может кто-нибудь сказать мне, если есть способ посмотреть на следы стека для таких ошибок, чтобы понять, какой объект вызвал неправильный доступ?

Спасибо!

Ответы [ 2 ]

22 голосов
/ 20 декабря 2011

если вы работаете в отладчике, то вы обязательно сможете увидеть фактическую строку, в которую выдается исключение.

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

enter image description here

13 голосов
/ 20 декабря 2011

В Xcode 4 вы можете установить точку останова исключения в редакторе точек останова. Каждый раз, когда выдается исключение (или перехватывается в зависимости от того, как вы его настроили), ваше приложение приостанавливается на строке, которая вызвала исключение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...