본문 바로가기

Programming/android

안드로이드 키보드의 InputType정리


안드로이드 단말은, 에딧텍스트의 상태에 따라, 키보드의 모양이 달라지게 할 수 있지요.

비밀번호를 눌러야 한다면, 숫자키보드가 나오고 뭐, 그런 것말이죠, 

이것은 editText의 inputType 속성을 적절히 지정해주면 됩니다. 
이 속성에 따라서, 키보드에 표시되는 키의 종류가 달라집니다.

속성은 세가지, Class, Variation, Flag 세가지가 있고, 각 속성은 중복되어 사용가능 합니다. 중복하여 사용하려면, |로 연결하여 사용합니다.

Class는 숫자, 문자, 비밀번호 등 입력문자의 종류를 지정합니다.
Variation은 Class의 세부적속성이 들어가죠.
Flag는 이보다 더 세부적인 속성으로, 대문자 자동변환 여러줄 입력 등의 동작을 수행한다고 합니다. 

코드에서 inputType의 속성을 변경할때에는 setInputType이나, setRawInputType메서드를 호출합니다. 

대표적인 몇가지만 정리해 보자면, 다음과 같습니다요,

inputType

설명

none

편집할 수 없는 문자열

Text

단순 문자열

textImeMultiLine

여러줄 입력 가능한 문자열

textPostalAddress

우편번호

textEmailAddress

이메일 주소

textPassword

비밀번호

textVisiblePassword

비밀번호 이지만 숫자는 보임.

number

숫자

numberSigned

숫자와 부호

numberDecimal

숫자와 부호와 소수점

phone

전화번호

datetime

날짜와 시간

 

원래 이보다 훨씬, 많은 것들이 있지만, 이정도만 찾아서 정리한 것이구요.
더 많은 옵션은, 최신, api에 있는 inputType 속성은 다음의 링크 참조하시면 되겠습니다.