Свойство объекта UIViewController недоступно - PullRequest
0 голосов
/ 18 ноября 2011

Я использую Mac OS X Lion с xcode-4.2

В моем AppDelegate.m в приложении: метод didFinishLaunchingWithOptions У меня есть следующая выдержка.

UIViewController *viewController1 = [[WSWFirstViewController alloc] initWithNibName:@"WSWFirstViewController" bundle:nil];
UIViewController *viewController2 = [[WSWSecondViewController alloc] initWithNibName:@"WSWSecondViewController" bundle:nil];
self.tabBarController = [[TabBarController alloc] init];
self.tabBarController.viewControllers = [NSArray arrayWithObjects:viewController1, viewController2, nil];

self.window.rootViewController = self.tabBarController;

[self.tabBarController showSplash];

[viewController1 displayItems];

What I 'я пытаюсь сделать это получить доступ к свойству displayItems объекта viewController1, который имеет тип WSWFirstViewController.

В WSWFirstViewController.h у меня есть

@property (retain, nonatomic) NSMutableArray *displayItems;

В WSWFirstViewController.m у меня есть @synthesized displayItems.

Не могу понять, почему я получаю:

Свойство 'displayItems' не найдено для объекта типа 'UIViewController *'.

Пока я не заметилмой объект (viewController1) не был типа UIViewController *, но WSWFirstViewController *.Но это все равно не помогло мне.

Любой совет приветствуется!

Ответы [ 2 ]

1 голос
/ 18 ноября 2011

Вы должны ссылаться на свои контроллеры по их правильному типу:

 WSWFirstViewController *viewController1 = [[WSWFirstViewController alloc] initWithNibName:@"WSWFirstViewController" bundle:nil];
 WSWSecondViewController *viewController2 = [[WSWSecondViewController alloc] initWithNibName:@"WSWSecondViewController" bundle:nil];

 ....

 [viewController1 displayItems];  // this will now work if you are in the same context
0 голосов
/ 18 ноября 2011

вы объявили в интерфейсе NSMutableArray displayItems?

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