У меня возникла странная проблема с моим NSLayoutConstraint.
Недавно я обновил свой iPhone до версии 8.3 и использовал последнюю версию Xcode.
Приложение падает на iOS 8.3, и точка останова указывает мне на:
self.triangleTopConstraint = [NSLayoutConstraint constraintWithItem:self.triangle
attribute:NSLayoutAttributeTop
relatedBy:NSLayoutRelationEqual
toItem:nil
attribute:NSLayoutAttributeTop
multiplier:1.0
constant:0.0];
[self addConstraint:self.triangleTopConstraint];
Это работало до iOS 8.3.
Тем не менее, я прочитал на этой странице здесь:
Он говорит использовать NSLayoutAttributeNotAnAttribute
, когда отношения не имеют второго взгляда. Поэтому я изменил его на это:
self.triangleTopConstraint = [NSLayoutConstraint constraintWithItem:self.triangle
attribute:NSLayoutAttributeTop
relatedBy:NSLayoutRelationEqual
toItem:nil
attribute:NSLayoutAttributeNotAnAttribute
multiplier:1.0
constant:0.0];
[self addConstraint:self.triangleTopConstraint];
Но приложение по-прежнему падает на iOS 8.3.
Я что-то упускаю ?
self.triangle
по отношению к чему-то другому, например к вершине своего суперпредставления (оно не обязательно должно быть вершиной суперпредставления, это просто особенно распространенная вещь, поэтому я использую ее в качестве примера). - person matt   schedule 15.04.2015nil
. Спасибо, что разбудил меня, Мэтт. Если вы опубликуете свой комментарий как ответ, я отмечу его как принятый. Консольного вывода не было, Xcode просто рекурсивно останавливался на int main() {}. - person Zhang   schedule 15.04.2015