iOS 개발자/Xcode 기능 정리

Xcode 기능 - 키보드 내리기, 사라지게 하기 / Keyboard disappear

FDEE 2021. 2. 2. 17:05

이번에는 키보드를 내리는 방법을 알아보겠습니다

 

키보드 입력을 구현하였지만 키보드를 못내리게 되면 안되겠죠?

그래서 그중 하나의 방법인

화면 밖을 터치했을 때 키보드가 사라지겠금 하는 코드를 알려드릴께요

 

1) AppDelegate.swift

이번 코드는 키보드를 사용하는 ViewController 에서 구현을 해도 되지만

모든 화면에서 일괄적으로 적용되려면 AppDelegate에 추가하는 것을 더 추천드립니다!

 

이런식으로 AppDelegate에서

extension UIViewController 를 통해 ViewController 전반적으로 함수를 사용할 수 있게 합니다

< 화면 밖 터치로 키보드 사라지게 하기 / Keyboard disappear 코드 >

extension UIViewController {
    func hideKeyboard() {
        let tap: UITapGestureRecognizer = UITapGestureRecognizer(target: self,
            action: #selector(UIViewController.dismissKeyboard))
        view.addGestureRecognizer(tap)
    }
    @objc func dismissKeyboard() {
        view.endEditing(true)
    }
}

 

 

2) ViewController

위의 코드를 조금만 이해를 하면

특정 상황일 때 키보드를 사라지게 하는 코드를 알 수 있습니다.

 

예를들어 어떤 버튼을 클릭했을시에 사라지게 하고싶다! 이럴땐

아래 코드를 사용하시면 됩니다!

< 키보드 사라지게 하기 / keyboard disappear 코드 >

view.endEditing(true)

 

아주 간단하죠?

 

아래는 동작 모습입니다