왕논의 연구실

한글 입력 제한에 대해서 본문

iOS/Swift

한글 입력 제한에 대해서

ywangnon 2021. 1. 27. 00:01

입력란에서 입력을 제한하는 방법에 대해서 고민해 보았습니다.

 

프로그램을 사용하는데 있어서 입력 개수를 제한하는 경우가 있습니다. 최대도 있고, 최소도 있습니다.

여기서는 최대 입력 수 제한에 대해서 말해보려고 합니다.

 

UITextView로 입력을 제한하려고 했습니다.

 

사실 최대 최소의 입력을 제한하는데 있어서 영어는 문제가 없습니다.

 

다만, 한글의 최대 입력 수를 제한하려고 했더니 문제가 생겼습니다.

마지막 글자에 받침이 들어가지 않는겁니다!!

또, 어떤 경우는 마지막 글자에 자음만 입력되고 더이상 입력되지 않는 경우도 생겼습니다.

 

왜 그럴까? 코드 문제인가 싶어도 길고 복잡한 것도 아니고 문제는 딱히 없어 보였습니다.

 

그렇다면, 최대 입력을 인지하는 프로그램 자체의 문제가 아닌가 싶었습니다.

 

제가 생각한 추측은 이렇습니다.

 

한글의 한 글자를 이루는데 있어서 하나의 자음이나 모음만 있는 것이 아니라 자음과 모음이 합쳐져서 한글자가 완성됩니다.

하지만 컴퓨터 입장에서는 'ㄱ'과 '가' 둘 다 유니코드 상의 한 표기인 것은 동등합니다.

사람의 입장에서 'ㄱ'은 완성된 글자가 아니지만, 컴퓨터의 입장에서는 완성된 글자와 별반 차이가 없다보니, 마지막에 자음이 입력된 순간에 글자수를 제한해버리는 것입니다.

 

그러면 한글은 어떻게 제한해야하나 고민했습니다.

생각해보니, 보통 게임 닉네임을 정할때보면 다 입력을 받고서는 확인을 눌른 후에 글자 수 제한 경고문을 띄워주었던 기억이 있습니다.(와우에서요)

아마 같은 문제가 아닐까 싶습니다.

 

고로, 한글은 입력은 제대로 받고 확인을 눌렀을때, 체크를 하는 식으로 해야하지 않을까 싶습니다.

'iOS > Swift' 카테고리의 다른 글

[Swift]동적 아이콘 변경  (0) 2021.09.22
[Swift]삼항연산자(?), 옵셔널 기본처리(??)  (0) 2021.09.22
[Swift]디버깅 식별자  (0) 2021.09.22
[Swift] Gesture Recogniger 짧게 요약  (0) 2021.09.17
배열 정렬에 대한 연구  (0) 2021.01.06