1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Swift】入門書では教えてもらえなかったdismissをシンプルに記述する方法

Posted at

入門書では教えてもらえなかった、よりシンプルにdismissを記述する方法を学んだので記載します。

入門書等でのdismiss(コード補完をそのまま利用した場合)

dismiss(animated: true, completion: nil)

よりシンプルなdismiss

dismiss(animated: true)

なぜ、completionを省略出来るのか?

・Apple 公式ドキュメントより
dismiss1.png
completion: (() -> void)? = nil)
の記載がある通り、completionに引数を渡さない場合は何も記述しなくてもnilが渡されるので、compolisionは省略することが出来ます。

で、completionって何?

・Apple 公式ドキュメントより
image.png
意訳すると、

completionは、
ViewControllerがdismiss(破棄)された後に、処理を実行する為のブロックで、何のreturnの値もパラメーターの値も持ちません。
多分、あなたはこの引数にnil入れるかもしれませんね。

とのことです。笑

completionは、完了達成という意味なので、
メソッドが完了した時に実行される処理のかたまり(ブロック)
と覚えるのが良さそう。

ちなみにいつ実行されるのか?

・Apple 公式ドキュメントより
image.png
viewDidDisappearが呼ばれた後にcompletionブロック内の処理が実行されるようです。


Appleの公式ドキュメント見るの少し楽しくなってきたので少しずつでも英語の勉強も兼ねて読んでいきたいと思います。
参考:Apple 公式ドキュメント(dismiss)
1
1
0

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
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?