whose view is not in the window hierarchy!への対処法

画面遷移の処理を、
viewDidLoad()やviewWillAppear()ではなく、
viewDidAppear()に書けばOKです。

    override func viewDidAppear(_ animated: Bool) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let adVC = storyboard.instantiateViewController(withIdentifier: "AdViewController") as! AdViewController
adVC.modalPresentationStyle = .overCurrentContext
present(adVC, animated: true, completion: nil)
}

画面遷移の処理は、遷移元のViewControllerの描画が完了してからでないとできません。

アプリの広告を画面表示時に出そうとしてついviewWIllAppearに書いてしまっていたので、
備忘録として残しておきます。
(viewDidLoadに書いてはいけないことはわかっていたのに、
DidAppearではなくWillAppearで問題ないと勘違いしていた…;;)

スポンサーリンク