Как решить эту ошибку «Предупреждение: Попытка представить, чье представление отсутствует в окне найма». - PullRequest
1 голос
/ 18 мая 2019

Я разрабатываю приложение для iOS, но у меня нет раскадровки, и я делаю чистый быстрый код, когда я пытаюсь проверить аутентификацию в MainViewController и использую execute , чтобы перейти к другому ViewController и если токен не существует, показать кнопку в MainViewController, я столкнулся с этим предупреждением, и оно не будет работать.

когда я использую , выполните , как показано ниже, чтобы перейти к другому ViewController, нажав на кнопку, она работает просто отлично.

Я видел все ответы по названию, которое я спрашиваю здесь, но во всех примерах есть раскадровки, поэтому он не связан с моим вопросом здесь.

вот фрагмент, который я пытаюсь сделать в своем приложении.


if defaults.string(forKey: Constants().userTokenKey) != nil
            && defaults.string(forKey: Constants().userTokenKey) != ""  {
            print("YOU ARE IN ELSE!")
            let vc = SelectLocationOnMapViewController()
            UIApplication.topViewController()?.present(vc, animated: true, completion: nil)
        } else {
            UIView.animate(withDuration: 1, animations: {
                self.loginRegisterParentView.alpha = 1.0
            })
            setButtonActions()
        }

1 Ответ

1 голос
/ 18 мая 2019

Проблема здесь

UIApplication.topViewController()?.present(vc, animated: true, completion: nil)

похоже, вы используете rootVC, который еще не полностью представлен, чтобы представить другой Vc, вам нужно переместить этот код из viewDidLoad, чтобы сказать viewWillAppear/viewDidAppear

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...