Xcode 7 находит причину SIGABRT

Я использую Xcode 7 beta 5 и создаю приложение с несколькими представлениями. В одном представлении есть кнопка, которая переводит вас во второе представление, но при нажатии этой кнопки происходит сбой с сообщением Thread 1: Signal SIGABRT.

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

Я также попытался добавить точки останова вручную и обнаружил следующее:

@IBOutlet weak var wakeTimeLabel: UILabel!
@IBAction func snoozeButton(sender: AnyObject) {
    snooze()
}

Если я ставлю точку останова на первую строку там (после всех остальных выходов), она схватывает, но когда я ставлю ее на функциональную строку, она выдает SIGABRT. Если я полностью удалю эти две строки, SIGABRT все равно произойдет.

Консоль содержит следующее:

* Завершение работы приложения из-за необработанного исключения «NSUnknownKeyException», причина: «[setValue:forUndefinedKey:]: этот класс не соответствует кодированию значения ключа для ключа whiteSwipe». * First throw call stack: (0x182a2da94 0x197387f80 0x182a2d754 0x1838a3694 0x18829b378 0x1883dd874 0x1829575ac 0x1883dc25c 0x188602fd8 0x1886077c4 0x188607a38 0x188607c94 0x187f755bc 0x187f75538 0x187f5dfa0 0x187f74e50 0x187f74a80 0x187f6dcf0 0x187f3eea4 0x187f3d520 0x1829e50dc 0x1829e4b70 0x1829e2870 0x1829118a0 0x18d96c088 0x187fa60d4 0x1000b4be0 0x197bd68b8) libc++abi.dylib: terminating with uncaught исключение типа NSException (lldb)


person Eben Collins    schedule 19.08.2015    source источник


Ответы (1)


Несмотря на то, что вы сказали, что переделали свои соединения, я помню, что Sigabrt было исключением, вызванным неисправными соединениями. В частности, ваше сообщение об ошибке появляется, когда вы меняете подпись соединения после того, как вы его подключили.

Например, я только что получил очень похожее сообщение после удаления 1 символа из объявления @IBOutlet:

FeedViewCollectionCell 0x7feab0c583b0> setValue:forUndefinedKey:]: 
this class is not key value coding-compliant for the key nameLabel.

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

person Kelvin Lau    schedule 19.08.2015
comment
Только что попробовал это снова (удалил код, щелкнул правой кнопкой мыши объекты и нажал x), и то же самое все еще происходит. Существуют ли другие возможные причины/решения? Есть ли способ определить неисправную линию? - person Eben Collins; 20.08.2015
comment
Поскольку в сообщении об ошибке упоминается whiteSwipe, проверьте, где вы объявили whiteSwipe. - person Kelvin Lau; 20.08.2015