Я работаю на какой-то старый код, который я не писал, и это действительно не хорошо ... архитектураОтклонить представлен контроллер представления, после того, как контроллер представления Предъявление был выпущен
Ситуация такова, что контроллер представления представляет собой настраиваемый контроллер представления по модулю, однако каждые 30 секунд репрезентативный контроллер представления создается.
Проблема заключается в том, что если модальный экран на экране, когда это происходит, то любые попытки отклонить его приводят к нечетному поведению (например, белому экрану).
Я попробовал позвонить [self.presentedViewController dismissViewControllerAnimated];
на вновь воссозданный контроллер, но presentedViewController
- это нуль, как и следовало ожидать.
Я также попытался сохранить слабую ссылку на контроллер модального представления, а затем, когда отображающий VC перезагрузится, установите это значение в значение старого VC. Это позволило мне позвонить self.customModalVC dismissViewControllerAnimated];
, но это вызывает вышеупомянутый белый экран, возможно, потому, что он представляет VC больше не находится в стеке?
Любые предложения приветствуются.
почему он воссоздается каждые 30 секунд? это звучит немного странно для меня. Я также вижу способ сохранить представление этого модального представления без ссылки на него, которая, вероятно, будет связана с проблемами памяти из-за того, что вам нужно будет удерживать ссылку на viewController, удерживая ее. Поэтому ваш лучший выбор звучит как рефакторинг/изменение этого. – zero3nna
Это связано с сетевыми звонками, я согласен, что это абсолютно глупый способ сделать это. Не было бы моего подхода. Похоже, у меня на самом деле нет много вариантов, кроме рефакторинга ... PM будет любить билет на 4 часа, чтобы попасть в трехмерный билет ха-ха. –
Да, это звучит как забавный билет. – zero3nna