1. 스크롤 뷰에서 키보드 내리기
: UIView 환경에서는 TextField 사용시 키보드 노출 상태에서 touchesBegan 을 이용하지만 UIScrollView에서는 스크롤 터치 이벤트가 동작해서 touchesBegan 함수가 호출되지 않는다.
UIScrollView에서는 UITapGestureRecognizer 이용해서 키보드를 내리게 해야된다.
// UIView 의 경우
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
view.endEditing(true)
}
// UIScrollView 의 경우
override func viewDidLoad() {
super.viewDidLoad()
let singleTapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(tabGesture))
singleTapGestureRecognizer.numberOfTapsRequired = 1
singleTapGestureRecognizer.isEnabled = true
singleTapGestureRecognizer.cancelsTouchesInView = false
scrollView.addGestureRecognizer(singleTapGestureRecognizer)
}
@objc func tabGesture(sender: UITapGestureRecognizer) {
view.endEditing(true)
}
'Swift > UIScrollView' 카테고리의 다른 글
[Swift] ScrollView 페이지데이터 추가 로딩 방법 (0) | 2024.05.10 |
---|---|
[SWIFT]UIScrollView 에 UITextField 사용시 키보드 만큼 스크롤 올리기 (0) | 2023.07.14 |
[SWIFT]스크롤뷰 이미지 Zoom In/Out 코드베이스 (0) | 2023.06.20 |
[SWIFT]ScrollView 상단/하단 이동 (0) | 2023.06.09 |