- 画像タップ時にアラートが出したい
- 画像タップ時に別ページに遷移させたい
など、画像がタップされた瞬間に特定のアクションを行いたい場面は多いかと思います。
今回は、Xcodeを使ったiOS開発にて、画像タップ時にアクションを実行する方法を紹介いたします。
対象の画像(UIImageView)を配置する
まずは、タップしたときにアクションを起こしたい画像を配置しましょう。
「Object Library」から「UIImageView」を選択して、storyboardに配置します。

次にその配置したUIImageViewに被せるような形で、Object Libraryから「Tap Gesture Recognizer」を配置します。
そうすると、storyboardのControllerの上部に「Tap Gesture Recognizer」と同じマークのアイコンが追加されます。(以下画像上部の左から3番目)

このアイコンが表示されたら、このアイコンからControlを押しながらViewControllerの編集画面にマウスをドラッグ・アンド・ドロップしましょう。

そして、ConnectionをActionにして、紐づけます。
ヒモ付が完了すると、
1 2 |
@IBAction func tapAction(_ sender: Any) { } |
というソースが自動で記述されるので、クロージャー({})の中に行いたい処理を書いていきます。
User Ineraction Enabledを有効化する
今までの説明ですべての作業は終了なのですが、1点だけ忘れてはいけないことがあります。
それは、以下の画像のように、画像のユーザーからのタップを受け付ける「User Interaction Enabled」をonにすることです。

ここまでやれば、画像をタップしたときに、画面遷移を実行したり、APIを叩いたり、なんでも好きなことができるようになりました!!
やった!!!!!