У меня есть приложение для iPhone, которое состоит из двух контроллеров View; основной и один с помощью экрана справки. У каждого из них есть кнопка, которая выполняет отступ от одного к другому.Могу ли я инициализировать что-то в приложении для iPhone с помощью раскадровки вне viewDidLoad?
Проблема заключается в том, что когда я перехожу с экрана справки на главный экран, вызывается метод viewDidLoad главного контроллера представления, поэтому вся инициализация, которую я выполнял при первом запуске приложения, повторяется. Есть ли другой метод в контроллере представления, который вызывается только один раз, где я могу выполнить инициализацию?
Моя первая мысль была: «Имейте логическую переменную, которая изначально установлена в значение« ложь », а затем проверяет ее, а если она ложна, выполните инициализацию, а затем установите ее в true» - но как ее инициализировать к ложному в первую очередь?
Это работает, но теперь у меня другая проблема: у меня есть NSMutableArray из кнопок (созданных динамически), которые связаны с представлением через IBOutletCollection, но когда я перехожу из окна справки назад к основному виду, кнопок больше не существует. Я чувствую, что проблема может заключаться в том, что оба сегмента являются модальными, и в этом случае возникает вопрос, какие типы должны быть такими, чтобы вид справки не вызывал перезапись основного вида? –
Если взгляды находятся на NavigationController, segues должны быть Push. Если нет NavigationController, вы можете использовать Modal. –
Проблема решена - я избавился от раздела Help-> Main segue, создал новый UIViewController, изменил класс справочной панели справки классу нового контроллера представления и создал действие для кнопки возврата справки, которая вызывает функцию rejectModalViewControllerAnimated. –