UIScrollViewを使用していたところ、touchesBeganが呼ばれませんでした。
その時の備忘録です。
環境
- Swift5
- xcode10.2
対策
UIScrollViewを拡張する。以下のコードを追加。
.swift
extension UIScrollView {
open override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
self.next?.touchesBegan(touches, with: event)
}
}
touchesBeganを呼ぶことができるようになりました。
.swift
/// キーボードが出ている状態の時にキーボード外をタップしたらキーボードを閉じる
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
print("キーボード外をタップ")
//キーボードを閉じる
self.view.endEditing(true)
}