적당한 고통은 희열이다

- 댄 브라운 '다빈치 코드' 중에서

초보 iOS 개발자의 일상/개발 업무

[Swift iOS] Custom Keypad 만드는 법

hongssup_ 2021. 10. 19. 17:44
반응형

왼쪽처럼 기존 키패드를 사용하여 금액을 입력하는 방식에서 00 / 000 을 추가하기 위해 오른쪽 커스텀 키패드를 만들어보게 되었다. 

우선 그냥 custom 키패드 뷰를 만들어준다. 

 

textField.becomeFirstResponder() 하면 자동으로 기존 키패드가 떠버리는데 

inputVIew를 사용하여 이를 커스텀 키패드로 할당해줄 수 있다. 

 

숫자 버튼들은 숫자와 동일하게 tag를 설정해주고, 

OK 버튼 터치시 .resignFirstResponder()로 키패드를 없애준다. 

 

@IBOutlet weak var textField: UITextField!
@IBOutlet weak var keyPadView: UIView! 

override func viewDidLoad() {
    super.viewDidLoad()
    textField.delegate = self
    textField.inputView = keyPadView
    textField.becomeFirstResponder()
}

@IBAction func onClickKeyPad(_ sender: UIButton) {
    switch sender.tag {
    case 13: //OK 버튼 터치시
        textField.resignFirstResponder()
        break
    default:
        break
    }
}

이렇게 해주면 작동은 잘되는데 기존의 textFieldDelegate 함수들은 안먹히는 것 같다? 

그래서 다 따로 다시 기능을 추가해주어따 

728x90
반응형