2012-02-01 4 views
4

Я создаю приложение ios в xcode 4.2. У меня есть внешний файл с базой данных. Я не хочу загружать данные во все виды. Как создать глобальную переменную для приложения табуляции? И когда я должен загрузить эту базу данных до закрытия приложения?Глобальная переменная в приложении iOS TabBar

+1

Вы должны создать и использовать экземпляр singleton. На второй вопрос я не могу дать вам хороший ответ. :( –

ответ

2

Я использую singletones так: в классе DataBase с некоторыми массивами данных я реализовать метод акций:

+(id)share 
{ 
    static id share = nil; 

    if (share == nil) { 
     share = [[self alloc] init]; 
    } 

    return share; 
} 

, а затем в некоторых классах : self.dataBase = [Общий ресурс базы данных];

5

В приложениях iOS данные модели часто хранятся в одиночном тоне , а не в глобальной переменной. Here is an article briefly describing singletons in Objective-C.

Вы можете загрузить свои данные в методе класса, который инициализирует ваш общий синглтон. Загрузка данных назад немного сложнее, потому что сам синглтон не знает, когда это сделать. Поэтому вы должны сделать метод экземпляра -(void)uploadData в вашем одноточечном классе и вызвать этот метод, когда ваше приложение будет закрыто. applicationWillResignActive: метод вашего делегата приложения - это хорошее место для инициирования загрузки.

0

Вы можете создавать глобальные переменные, делая это

extern NSString *someString; 

@interface ...... 

@property (strong, nonatomic) NSString *someString; 

@end 

@implementation ...... 

@systhesize someString; 

NSString *someString; 

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