В общем, вы хотите избежать использования глобалов.Если вам нужен доступ к данным, которые должны быть переданы, есть два общих подхода.
Поместите значения в ваш AppDelegate.
Если у вас есть только один или два общих ресурса.значений, AppDelegate - это простой способ размещения общего содержимого.
Доступ к AppDelegate можно получить с контроллеров следующим образом:
FooApp* appDelegate = (FooApp*)[[UIApplication sharedApplication] delegate];
Где FooApp
- имя вашего приложения. Класс.
Создание одноэлементного класса.
Не допускается загрязнение вашего AppDelegate множеством общих значений, и / или если вы хотите, чтобы эти значения сохранялись от сеанса ксеанс, создание класса Singleton , который поддерживается NSUserDefaults
, - это еще один способ обмена значениями между экземплярами.