2012-01-23 2 views
1

В моей установке приложения iOS у меня есть универсальный объект (можно назвать его UniversalObj), объявленный в объекте верхнего уровня. (SampleAppDelegate в моем случае)Xcode Получить объект с объекта верхнего уровня

В этом, у меня есть UITabBarController, содержащий два UIViewController (которые я хочу, чтобы иметь доступ к UniversalObj

В SampleAppDelegate я попытался следующие пройти UniversalObj к нему:.

MyViewController *vc = (MyViewController *) [self.tabBarController.viewControllers.objectAtIndex:0]; 
[vc setMyObj:self.universalObject]; 

проблема с этим состоит в том, что, когда я делаю это, иногда, вид не загружен еще так MyViewController.myObj==null.

Теперь я пытаюсь получить доступ к SampleAppDelegate (от NSObject) от MyViewController. Я могу добраться до UITabBarController, используя: ***self.parentViewController***, но я не знаю, как добраться до SampleAppDelegate.

Как я могу получить UniversalObj в SampleAppDelegate от MyViewController? Как я могу изменить линию self.parentViewController в MyViewController, чтобы добраться до SampleAppDelegate? Или есть лучший способ сделать это?

Заранее за вашу помощь.

Guvvy

ответ

0

я обнаружил, что я был в состоянии получить доступ к объекту из MyViewController так:

[self setMyObj:[(SampleAppDelegate *)[UIApplication sharedApplication].delegate universalObj]]; 
1

Вы бы использовать -[UINib instantiateWithOwner:options:]:

NSArray * topLevelObjects = [nib instantiateWithOwner:pwner options:options]; 
+0

Спасибо! Но как мне получить объект UINib? Я просто делаю это с помощью '[UINib alloc]'? И что я должен указать для параметра 'owner'? Это просто «self.parentViewController»? – Gavy

+0

@Guvvy a + b) '+ [UINib nibWithNibName: bundle:]' является обычным способом. c) Вы должны будете определить, что на основе фактического nib, который вы загружаете здесь - что является его файловым владельцем? Соответствует ли это существующему объекту/экземпляру или новому экземпляру? – justin

+0

Я понял это по-другому, но спасибо за вашу помощь! – Gavy

Смежные вопросы