LoginSignup
0
1

More than 3 years have passed since last update.

[Swift] Viewの下にViewが隠れてしまった

Posted at

viewの下にviewが隠れてしまったことがありました。

該当のソースコード

override func viewDidLoad() {
    super.viewDidLoad()

    showAlert()
    secondScreenUI()
}

showAlert() はアラートを表示させる関数です。
secondScreenUI()は画面のUIが定義されている関数です。

想定していた動作

スクリーンショット 2020-08-13 17.31.50.png

実際の動作

スクリーンショット 2020-08-13 17.34.05.png

少しわかりにくいですが、最初の画面と2番目の画面の下にアラートが表示されてしまっています.

解決したやり方

showAlertviwDidLoad()の中で呼び出すのではなくviewDidLayoutSubviews()内で呼び出しました。

override func viewDidLoad() {
    super.viewDidLoad()

    secondScreenUI()
}

override func viewDidLayoutSubviews() {
    showAlert()
}

実行結果

スクリーンショット 2020-08-13 17.42.35.png

少しわかりにくいですが、アラートが一番上に表示されています。

さいご

今回のトラブルはライフサイクルについてさらっと学ぶ良い機会となりました。

ライフサイクルについては以下の記事に目を通してました。

UIViewControllerのライフサイクル

ViewControllerのライフサイクル

0
1
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1