1
0

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 1 year has passed since last update.

@IBActionfunc と prepare はどちらが先に呼び出されているのか?

Posted at

気になったこと

表題の通りです。
segueで次の画面に値を引き渡す時、次の画面にうつるボタンにメソッドを呼び出す@IBActionを別に関連付けした時、prepareか@IBActionどちらが先に呼び出されるのか気になりました。

もう少し具体的にアプリの実装を説明すると、
ボタンを押した時に、TextFieldに入っている値を変数に値を代入するタイミングをどこにしようか悩んだのでコンソールに出力して、ボタンを押した時にどこのメソッドがはやく呼び出されているのかを検証してみました。

私の予想では@IBActionでprepareを呼び出していると思うのでIBActionが先に呼び出されている気がします。

検証結果

image.png

ということで結果は prepare の方が先に呼ばれてる でした〜〜〜!!

prepare → 関連付けされてる @IBAction が呼ばれるんですね!!
どういう原理になってるか説明してやるぞ!という方いらっしゃいましたらぜひコメントください!以上!

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?