今回の記事はページ移動時に「ViewDidAppear」を使用してページの画面を更新する方法に関しての記事になります。初心者の方でもわかるように簡単なサンプルを交えて丁寧に解説していきますので是非参考にしてみてください。
ではメインの記事に進みます。
「ViewDidAppear」の使い方
「ViewDidAppear」使い方は簡単で下記をクラス内に追加するのみです。
override func viewDidAppear(_ animated: Bool) {
}
この「ViewDidAppear」の起動タイミングはページが遷移した後ということに注意しましょう。
似たメソッドに「viewdidload」が存在します。こちらはページを読み込んだ初回のみの実装になります。そのため初期化等の最初のみの動作でOKな処理を書くのが通例です。
仮にページ遷移時などに強制的に「viewdidload」を起動させたい場合は下記記事のように「Delegate」を自作してその中で「viewdidload」を動かすか、「ViewDidAppear」の中で「ViewDidload」を回すかになります。
ただし、上記のような処理はプログラムとしては不格好です。初期に行われる操作とページ更新時に行われる処理に関しては分けておくほうが良いと思われます。
では簡単なサンプルを使用して「ViewDidAppear」の使い方を見ていきましょう。
「ViewDidAppear」を使ってページ遷移時に画面を更新
ページ移動を行う簡単なサンプルを作成します。
下記記事を参考にするか自身でボタンでページ移動するサンプルを用意します。
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var TestButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
//初期設定
print("最初だけ実行")
}
//画像が再描写されたとき
override func viewDidAppear(_ animated: Bool) {
print("画面更新時に実行")
//ボタンを消す
TestButton.isHidden = true
}
@IBAction func move(_ sender: Any) {
performSegue(withIdentifier: "次のページ", sender: nil)
}
}
画面更新は初回も送られるのでアプリをデバックした際にまずは下記のように表示されます。
最初だけ実行
画面更新時に実行
ボタンクリックを行いページを戻ってくると下記のような変化が起きます。
画面更新時に実行
+ボタンが消えている
このようにページ移動時などの画面が作られる際に見た目の変更などが必要な場合は「ViewDidAppear」を利用して画面更新を使っていきましょう。
今回の記事は以上です。他にも多数のSwift関連の記事を記載しているので是非参考にしていただければ幸いです。
コメント
[…] 「【Swift】viewDidAppearを使ってページ遷移時に画面の更新を行う方法。」 […]