Недавно представленный контроллер представления немедленно уволен после появления? - PullRequest
1 голос
/ 01 ноября 2019

У меня есть контроллер вида, который вызывает другой контроллер вида с present(newViewController.... Однако всякий раз, когда вызывается функция, которая вызывает эту существующую функцию, новый контроллер представления всплывает на экране на секунду, а затем снова закрывается. В этом новом контроллере представлений нет функций, позволяющих отключать себя.

Единственное, о чем я могу думать, это может быть связано с моим использованием SnapKit и переопределением viewDidLayoutSubviews:

    override func viewDidLayoutSubviews() {
        super.viewDidLayoutSubviews()
        if let data = data {
            return
        } else { setupAVFoundation() }
    }

data - это необязательное значение, которое устанавливается ко времени, когда я представляю новый контроллер представления, поэтому viewDidLayoutSubviews возвращается в операторе if let. Однако я подтвердил, что при представлении нового контроллера представления, viewDidLayoutSubviews вызывается примерно четыре раза. Я не могу понять, почему это происходит или почему это может прервать представление нового контроллера представления.

Вот где представлено новое представление:

    func found(code: String) {
        print(code)
        data = code
        present(ItemSelectViewController(), animated: true, completion: nil)
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...