Исключение при настройке поля имени наконечника в Interface Builder

StackOverflow https://stackoverflow.com/questions/862839

Вопрос

Я пытаюсь загрузить контроллер представления из пера в Interface Builder.Моя базовая установка такова:

MainWindow.xib содержит:Все обычные вещи, экземпляр делегата приложения, окно и т. д.

UINavigationController, который имеет UIViewController в качестве корневого контроллера представления.Имя пера UIViewController установлено на имя xib, который содержит мой контроллер представления.

Контроллер представления в моем отдельном xib имеет тип владельца файла, равный классу контроллера для этого представления.

Всякий раз, когда загружается представление (т. е. когда приложение запускается), выдается исключение, сообщающее, что мой класс контроллера не соответствует кодированию значений ключа для ключа [вставьте сюда имя случайной переменной].В большинстве случаев ключ — это имя, которое я дал кнопке, или что-то еще, что я установил как IBOutlet.

Почему это происходит?Что мне не хватает?Я попытался создать свойства для каждой из этих переменных для создания средств доступа, совместимых с KVC, но все равно выдает исключение.

Любая помощь будет потрясающей, спасибо!

Это было полезно?

Решение

Приложение пытается обращаться с вашим UIViewController как с UINavigationController, но это не так.

Подклассифицируйте корневой контроллер представления как UINavigationController вместо UIViewController:

@interface rootViewController : UINavigationController {
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top