Обычно, когда это происходит со мной, ответ @ TechZen делает свое дело.Вчера, однако, я потратил смущающе много времени на подделку соединений раскадровки, только чтобы обнаружить, что проблема была в моем коде.
У меня есть собственный контроллер представления, который обрабатывает различные макеты в раскадровке, но один из макетовнужен специальный ярлык, не используемый другими.Поэтому я создал подкласс следующим образом:
@interface MyViewControllerSubclass : MyViewController
Затем я добавил частное свойство в MyViewControllerSubclass.m:
@interface MyViewController ()
@property (weak, nonatomic) IBOutlet UILabel *crashesApp;
@end
Xcode с радостью позволял мне подключать этот IBOutlet, но каждый раз, когдазагрузится представление, приложение будет аварийно завершать работу со старым «не соответствующим ключу-значению ключу chrashesApp».
Решением, которое наполовину очевидно в ретроспективе, было изменение закрытой категории для использованияправильное имя, то есть имя подкласса :
@interface MyViewControllerSubclass ()
@property (weak, nonatomic) IBOutlet UILabel *noMoreCrashing;
@end