2013-07-19 4 views
1

Я создаю приложение iOS, которое использует данные ядра почти в каждом VC.Как получить доступ к общей ячейке памяти через несколько VC?

Приложение имеет множество навигационных контроллеров и различные типы сегментов.

Я хочу, чтобы все эти viewControllers использовали один и тот же контекст управляемых объектов. Кроме того, я не хочу продолжать использовать подготовку к segue, чтобы сделать это, поскольку я могу использовать это, чтобы передать более релевантную информацию для конкретного VC.

Следовательно, мне нужна помощь для создания центрального класса или чего-то подобного, что поможет мне получить один и тот же экземпляр контекста управляемого объекта во всех моих VC.

+0

Try singleton. http://stackoverflow.com/questions/7598820/correct-singleton-pattern-objective-c-ios – Desdenova

ответ

2

Singleton Pattern!

@class SingleTonnedClass; 
@interface SingleTonnedClass : NSObject 
    + (SingleTonnedClass*)sharedInstance; 
    - (id)getterInstanceMethod; 
    . 
    . 
    . 
@end 

В .m

@implementation SingleTonnedClass 
    SingleTonnedClass *singleTonInstance; 
    + (SingleTonnedClass*)sharedInstance 
    { 
     if(!singleTonInstance) 
     { 
     singleTonInstance = [SingleTonnedClass new]; 
     } 
    } 

    ... 
    . 
    . 
    other method implementation 
@end 

из любого места в вашем проекте вы можете получить доступ к экземпляру класса Синглтон, просто включая его заголовок и,

[SingleTonnedClass shatedInstance]; //will return you the singleton instance 

и методы доступа, как это

[[SingleTonnedClass sharedInstance]someMethod]; 
+0

Спасибо большое .. Помогли много. :) –