Программа iPhone немедленно завершает работу при загрузке просмотра из NIB - PullRequest
0 голосов
/ 07 марта 2011

Данное приложение представляет собой простой пример программы. В моем заголовке контроллера вида у меня есть кнопка, созданная так:

@interface ObscurelyNamedViewController : UIViewController {
    UIButton *yoButton;
}
@property(nonatomic, retain) IBOutlet UIButton *yoButton;

- (IBAction)yoButtonPressed:(id)sender;

yoButtonPressed: реализовано так:

[yoButton setTitle: @"I said 'yo', jammit!" forState: UIControlStateNormal];
// repeat for other button states
.
.
.

В Интерфейсном Разработчике я подключил событие Touch Up Inside UIButton к методу yoButtonPressed в владельце файла ObscurelyNamedViewController для распознавания касания. В свою очередь, я подключил выход Владельца файла обратно к yoButton, чтобы включить обновление его заголовка.

При сборке и запуске я не получаю ошибок, но ничего не отображается, и приложение немедленно закрывается. Единственное, что живет в IB - это представление UIImage. Я что-то упустил или что-то неправильно подключил?

РЕДАКТИРОВАТЬ: В консоли я вижу следующее сообщение:

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "BradiiCaliiViewController" nib but the view outlet was not set.'

Ответы [ 2 ]

1 голос
/ 07 марта 2011

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

Вам нужно ваше сообщение из консоли, но отметьте

  1. Использовали ли вы initWithNibName?Если да, то вы правильно поняли имя?
  2. Делаете ли вы что-нибудь с Outlets в init?Вы не должны - и делайте это в viewDidLoad.

Знание сообщения в вашей консоли поможет нам дать вам реальный ответ.

Редактировать: на основе вашего сообщения консоли

  1. Дважды щелкните файл .xib, чтобы перейти к IB
  2. Нажмите на владельца файла
  3. Перейти к Инспектору подключений
  4. Выход просмотра не настроен(верно?) - перетащите кружок на значок представления в окне документа.

(извините, но у меня нет IB передо мной - это из памяти -- осмотрите розетку в инспекторах соединений, если я ошибаюсь относительно точного местоположения)

0 голосов
/ 07 марта 2011

Перемещено из комментария к ответу Лу Франко:

BradiiCaliiViewController жалуется, что у него нет представления даже после загрузки NIB.Вы должны подключить точку просмотра Владелец файла к вашему представлению в XIB BradiiCaliiViewController.

...