そんなことよくありますよね。
「swift タップ 反応しない」とかでググれば以下のような情報がわんさか出てきます。
・コードでつけた部品ならその部品のisUserInteractionEnabledをtrueにする
・storyboardを使っているならUser Interaction Enabledにチェックを入れる
・同じ部品を再配置して古いReferencinc Outletを使っていないか確認する
・それでもダメならUITapGestureRecognizerを使ってみる
などなど。
ただ、私の場合どれも正しく設定されていて、それでもなお動かず色々と試しているうちに気づきました。
「上のボタンは反応するけど、下のボタンが反応しないことがある」
実はUIScrollViewを使っていたため、ボタンを配置していた親Viewの高さが一定ではなかったんですね。
なので、親Viewからはみ出したボタンは反応しなかったんです。
もっと言うと、同じボタンでも親Viewからはみ出した部分はタップ出来ません。
これがわかっていたら「swift タップ 領域外」とか「swift タップ はみ出る」とか調べると思うのですが、それって原因がわかった後なので、調べている時は頭が回らずものすごい悩みました・・・。
同じようなことで悩んでいて「swift tap 反応しない」とか「swift タップ 動かない」とかで調べてこの記事が役に立てば幸いです。