Xcode выдает ошибку при попытке добавить новый контроллер вида - PullRequest
0 голосов
/ 20 сентября 2011

Я новичок в Objective-C и в настоящее время изучаю учебник, в котором показано, как добавить новый вид и контроллер вида в существующее окно.

Книга на данный момент говорит мне:

"Добавьте экземпляр TestViewController к своему коду и пометьте его как IBOutlet. Мы помещаем его в класс делегата приложения TestAppDelegate. В TestAppDeligate.h новый код будет выглядеть следующим образом:

IBOutlet TestViewController* testViewController; "

Поэтому, когда я изменяю заголовочный файл делегата приложения для включения этой строки кода, он выглядит следующим образом.

 #import <UIKit/UIKit.h>
 #import "TestViewController.h"

 @class views_and_controllersViewController;

 @interface views_and_controllersAppDelegate : NSObject
 <UIApplicationDelegate> {

 }

 @property (nonatomic, retain) IBOutlet UIWindow *window;

 @property (nonatomic, retain) IBOutlet
 views_and_controllersViewController *viewController;

 IBOutlet TestViewController* testViewController;

 @end

Однако в этот момент Xcode выдает мне ошибку:

Невозможно объявить переменную внутри @interface или @ protocol

а также предупреждение:

Атрибут iboutlet может применяться только к переменным или свойствам экземпляра

Я не преминул заметить, что все другие объявления экземпляров в заголовочном файле имеют префикс @property tag. Это обязательно? И если так, то в книге просто опущено это с ожиданием того, что я уже знал, что Obj-C ожидает этого?

Кто-нибудь, что я здесь не так делаю?

1 Ответ

1 голос
/ 20 сентября 2011

Ваш IBOutlet TestViewController * testViewController должен быть перемещен вверх внутри секции @interface.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...