AI Engineering Service

AI Engineering Serviceの公式ブログです。開発者のプライベートな内容を含みます。

【Swift5】ScrollView内のタッチイベントを検知してキーボードをしまう

f:id:ibarakito:20190723235723p:plain

ScrollViewのタッチイベントを検知するのは結構よくある需要だと思うのでメモしておきます。

ScrollViewのタッチイベントを拾ったらsuperviewのタッチイベントを呼び出す、といった形にtouchesBeganをオーバーライドしたMyScrollViewを作ります。

class MyScrollView: UIScrollView {
    
    override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
         superview?.touchesBegan(touches, with: event)
    }
}

ViewControllerのタッチイベントでendEditingを呼び出すとキーボードが仕舞われます。

    override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
        self.view.endEditing(true)
    }
プライバシーポリシー / お問い合わせ