画面上に簡単なメッセージ/選択肢を表示(Alert/MessageBox)


画面上にかんたんにメッセージを表示するコード。大抵の言語は1行で表示することができますが、Swiftだとそういうわけには行かないようです。ただ汎用性のあるコードが書けるので融通は利くかも。

選択肢のあるメッセージ

Simulator Screen Shot 2017.03.08 16.17.23

1つのボタンがあるボタンを用意するだけで最低4行は必要になります。(無理やり縮めることも可能ではあるが…)

なお「Continueボタンを用意する」部分の2行を省くとボタンがないメッセージが表示されて一瞬で消えます。少なくともメッセージを表示したいときは1つのボタンは最低必要になります。

また、この場合だとボタンを押しても何も起きませんが、ボタンが押された(タッチされた)際のイベントはhandler引数に指定します。

指定した時間だけ表示して勝手に消えるメッセージ

Simulator Screen Shot 2017.03.08 16.10.51

ユーザーアクセシビリティ的にはよろしくない方法だけど、選択肢なしのメッセージでちゃんとユーザーが読めるようにする手段もあります。

presentメソッドのcompletion引数に数秒待つスリープを呼び出せばこれでもOK、実際こんな実装している人は見たことない。

私が思うに、presentメソッドのcompletion引数はnilを指定する人が多いんじゃないかなって思う。使い道あるのかなこれ