Конечно.Вам просто нужно сохранить сохраненную ссылку на объект UIView
в постоянном объекте.Например, вы можете добавить сохраненное свойство в ваш подкласс UIApplicationDelegate
.Вы можете иметь этот делегат для создания экземпляра представления, и все контроллеры просто запросят у представителя приложения представление.Если у вас есть контроллер корневого представления, который всегда доступен, вы можете сохранить его там.
Возможно, продумывание общей структуры вашего приложения поможет найти «правильное» место для хранения UIView
.Ниже я представляю структуру приложения, которую я часто использую, не обязательно в качестве совета о том, как вы должны структурировать свое приложение, но в качестве примера для расширения возможностей, которые вы можете рассмотреть, чтобы помочь вам подумать о лучшей структуре для вашего приложения.1007 * Я пишу много брошюр, как приложения для наших клиентов.В этих приложениях мне нужно представить несколько просмотров, каждое из которых несколько аналогично страницам в брошюре.Некоторые из этих представлений будут взаимодействовать с пользователем и должны сохранять свое состояние за пределами экрана или обмениваться данными о состоянии с другими представлениями.
Для управления этими приложениями я создаю объект диспетчера презентаций.Этот объект будет сохранять общее состояние приложения, включая представления, которые должны сохраняться, когда они не отображаются.Я использую один главный UIViewController, который владеет менеджером презентаций и отвечает за все общие операции управления просмотром.Конкретная логика для отдельных представлений будет идти в подклассах UIView для каждого представления.Эти отдельные представления создаются менеджером презентаций и могут запрашивать у этого менеджера то, что он знает, включая любые постоянные представления.