키보드를 내려보자

김동현·2022년 9월 10일
0

iOS

목록 보기
6/13


UITextField에서 터치 입력이 발생하면
키보드가 올라옵니다.
그렇다면 올라온 키보드는 어떻게 내릴까요?

일단 UITextField를 하나 생성 해보겠습니다.


touchesBegan

그 다음은 touchesBegan 이라는 메서드의 대해 짚고 넘어가야 할 것 같아요!
이 touchesBegan 메서드는 View 또는 Window에서
하나 이상의 새로운 터치가 발생 했음을 인식하고 처리해야 할 일이 있을때 사용하면 된다고 합니다.
즉 새로운 터치가 발생하면 키보드가 내려가도록 처리하는 동작을 추가해주면 될 것 같아요!

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
	self.view.endEditing(true)
}


그렇다면 여기서 self.view.endEditing(true) 는 무슨 동작을 의미하는 것일까요? View(또는 텍스트 필드가 포함된 View)가 First Responder 상태에서 벗어날 수 있도록 만들어 준다고 합니다

사용자가 UITextFiled를 터치하게 되면
RootView는 First Responder로 변경됩니다.
그리고 키보드가 올라오게 되죠.

그리고 우리는 First Responder 상태인 RootView를 물러나게 하도록 동작시켜서
키보드를 내려야 합니다.
여기서 First Responder에서 물러나게 만들어 주는 방법이
view.endEditing(true)를 호출해주는 것이랍니다.
이제 키보드가 올라와 있는 상태일 때 View를 터치하면 키보드가 내려가는 걸 확인할 수 있습니다.🙌

profile
iOS 개발자 김동현입니다 :)

0개의 댓글