У меня есть UIViewController, который я загружаю из xib-файла и помещаю в стек контроллера навигации.
В заголовочном файле для View Controller у меня есть:
IBOutlet UILabel *myTitle;
Я пока ничего не делаю с "myTitle" в коде; Я просто настраивал соединения.
Когда я компилирую и запускаю приложение, и в xib-файле не определены метки (и, следовательно, ничего не прикреплено к IBOutlet), оно работает. Контроллер представления отлично отображает изображение, показывая представление, которое я построил в Интерфейсном конструкторе.
Если я добавлю метку в xib в конструкторе интерфейса, но не подключу ее к розетке и перекомпилирую, она все равно будет работать, показывая метку с текстом по умолчанию, который я для нее ввел.
Но если я подключаю IBOutlet myTitle к метке в построителе интерфейса, перекомпилирую и запускаю приложение, оно работает нормально, пока я не попытаюсь вставить контроллер представления в стек контроллера навигации, и в этот момент я получаю сбой:
*** -[UILabel copyWithZone:]: unrecognized selector sent to instance 0x4558e20
Если я снова отключу розетку, она возобновит работу, показывая статическую метку, как и раньше. Похоже, что при отображении представления происходит нечто странное, потому что происходит сбой, когда я помещаю представление в стек навигации.
Разве я не должен добавлять IBOutlet в UILabel или что-то в этом роде? Или что-то еще происходит? Любые предложения о том, где искать проблемы?