Я думаю, что ваша интуиция верна: когда вы отклоняете модальный контроллер вида, базовый вид отображается снова, и он получает сообщения viewWillAppear
/ viewDidAppear
.
Одна возможность, которую вы должны исправитьэто сбрасывает анимацию в viewDidLoad
, которая вызывается после загрузки представления в память (только один раз, если представление не выгружено).Действительно, этот метод используется для завершения инициализации представления и кажется правильным местом для размещения reset
анимации.
Если это решение не подходит для вашего приложения (я понятия не имею, кто выв целом) и вам нужно сделать сброс в viewWillAppear
, вы можете подумать об установке флага в вашем контроллере, когда отображается модальное представление, так что вы знаете, когда в следующий раз ваш контроллер получит viewWillAppear
, что он приходитпосле увольнения модального представления, и вы не делаете сброс.Я не предлагаю вам сделать это, что довольно забавно и не очень гибко, просто говорю, если вы не можете принять другое решение.Намного лучше изменить дизайн вашего приложения, чтобы в viewWillAppear
.
не требовался сброс настроек.