Использование NSDictionary во всем проекте iphone - PullRequest
0 голосов
/ 21 апреля 2010

Как вы получаете доступ к NSDictionary в разных NSViewControllers. NSDictionary был инициализирован в моем файле делегата. Должен ли я импортировать мой файл делегата в каждый файл контроллера представления или все мои представления в верхней части моего делегата знают о моем NSDictionary? Возможно ли мне объявить мой словарь в каждом файле? -Спасибо Guy

Ответы [ 2 ]

0 голосов
/ 21 апреля 2010

Если у вас есть NSDictionary в делегате приложения, вы можете объявить его как свойство в делегате. Затем в любом файле, который нуждается в объекте словаря, вы можете получить к нему доступ, как показано ниже:

AppDelegate *mydelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate];

NSDictionary *dict = mydelegate.dictionary;

Предполагается, что имя файла вашего делегата - AppDelegate, а имя ссылки на объект NSDictionary - словарь. Вам нужно будет импортировать AppDelegate в ваши файлы, чтобы использовать приведение.

0 голосов
/ 21 апреля 2010

NSDictionary должен быть представлен как свойство в любом классе, который его создает. Вы должны импортировать файл заголовка для каждого другого класса, который должен использовать его (чтобы они могли получить доступ к свойству).

Обычно плохая практика - помещать подобные вещи в делегат приложения (дочерние классы не должны полагаться на делегат приложения) - похоже, что он лучше подходит для модельного класса (для получения дополнительной информации на шаблоне MVC вы можете увидеть документацию Apple ).

...