Как я могу использовать строку, объявленную в appDelegate в моем ViewController? - PullRequest
0 голосов
/ 29 ноября 2011

Предположим, я объявил строку NSString в appDelegate и хочу использовать эту строку в моем ViewController. Как я могу использовать эту строку в моем ViewController?

Ответы [ 2 ]

3 голосов
/ 29 ноября 2011

Только для строки многие рекомендуют NSUserDefaults.

Если вы хотите использовать AppDelegate, ответ перекрывает этот вопрос Вызов функции в AppDelegate?

Вот мой ответ

Вы можете создать заголовочный файл с макросом для AppDelegate

GlobalData.h

#import "AppDelegate.h"
#define APPDELEGATE (AppDelegate *)[[UIApplication sharedApplication] delegate]

Затем использовать его в любом классе

#import "GlobalData.h"

// to gain access to the delegate
AppDelegate * appDelegate = APPDELEGATE;

Для доступаваша строка (предположим, что это свойство с именем globalString)

appDelegate.globalString;

Я использую этот подход, потому что затем могу хранить больше # define для некоторых глобальных констант (например, soundFXVolume - #define SOUND_FX_V 0.6)

0 голосов
/ 29 ноября 2011
((appDelegate *)[UIApplication sharedApplication].delegate).myString;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...