2016-09-16 1 views
2

только что обновил мой Xcode и получил эту ошибку в одном из моих предыдущих проектов, я искал вокруг и нашел this вопрос в соответствии с этим вопросом это ошибка Xcode. Я не знаю, как это исправить, потому что сообщение об ошибке не дает мне никаких подсказок об ошибке и ее возникновении. до сих пор, что у меня есть это:Не удалось выполнить команду из-за сигнала: Ошибка сегментации: 11 swift 3

Command failed due to signal: Segmentation fault: 11 

и журналы ошибок содержит имя this класса и этот класс является частью

this Library

кого уже сталкивались с подобной проблемой ??

У меня есть преимущество. моя ошибка указывает на строку:

While emitting IR SIL function @_TFC12SCLAlertView12SCLAlertView16viewDidDisappearfSbT_ for 'viewDidDisappear' at mydirectorytoproject/mProject/Pods/SCLAlertView/SCLAlertView/SCLAlertView.swift:379:19 

вот линия 379 на моем классе:

override open func viewDidDisappear(_ animated: Bool) { 
    super.viewDidDisappear(animated) 
    NotificationCenter.default.removeObserver(NSNotification.Name.UIKeyboardWillShow) 
    NotificationCenter.default.removeObserver(NSNotification.Name.UIKeyboardWillHide) 

}

+1

Me! Мой опыт в том, что это не может быть линия, которая вызывает проблему. Попробуйте выполнить комментирование разделов метода и компиляции. Возможно, константы имеют строчные формы –

+0

@HongWei, пожалуйста, проверьте обновленный вопрос, который я назвал неправильными строками, извините, мой плохой –

ответ

2

Я думаю, что ваш наблюдатель не так. Вы помещаете имя уведомления вместо наблюдателя:

NotificationCenter.default.removeObserver(NSNotification.Name.UIKeyboardWillShow) 
NotificationCenter.default.removeObserver(NSNotification.Name.UIKeyboardWillHide) 

попробовать что-то вроде, если ваш наблюдатель текущий класс:

NotificationCenter.default.removeObserver(self) 

Кроме того, я думаю, вам не нужно open в override open func viewDidDisappear(_ animated: Bool)

0

Я думаю, вы добавили один и тот же файл два раза в свой проект.

Проверьте все файлы и удалите их.

Я думаю, это поможет вам, потому что это работает для меня.

0

Я столкнулся с той же проблемой сейчас. Вы должны использовать NotificationCenter.default.removeObserver(self) в своих методах deinit или viewDidDisappear.