У меня есть первый UISplitViewController, в котором есть (и по умолчанию) два других контроллера представления в виде дочерних элементов, и для одного из них есть еще один контроллер представления в качестве дочернего (опять же он по умолчанию).Как поделиться моделью с несколькими контроллерами?
Моя проблема заключается в том, что модель, которая в основном является классом, используемая бизнес-логикой, создается в AppDelegate, и я бы хотел использовать ее в каждом контроллере.
Я попытался использовать метод viewDidLoad для передачи модели через весь контроллер, но этот метод вызывается в последнем дочернем элементе, а затем проходит через иерархическое дерево в SplitViewController.
Два ограничения я хотел бы FULLFILL являются:
- Я не хочу использовать синглтон
- Я не хочу, чтобы все мои контроллеры знать AppDelegate
Есть ли способ этого?
Что является причиной «Я не хочу использовать синглтон» –
меня попросили ограничить dependecies на самых низких. – Cratein
Я согласен с @GrzegorzKrukowski, синглтоны на самом деле обеспечивают упрощенный способ запуска класса. вы просто вызываете метод вместо того, чтобы делать alloc/init каждый раз. – user2277872