전화번호는 정보를 일반적으로 DB에 저장되는 형태는 "01012345678" 문자열 형태입니다.
사용자 화면에 보여줄 때는 "010-1234-5678"로 보여주는 것이 훨씬 가독성이 좋습니다.
이러한 작업을 안드로이드에서 제공하는 기본 메서드를 이용하면 표현이 가능합니다.
1. 전화번호 DB를 가져와서 표현할 때
String hyphenPhoneNumber
= PhoneNumberUtils.formatNumber("01012345678", Locale.getDefault().getCountry());
System.out.println(hyphenPhoneNumber); // 010-1234-5678
2. EditText에서 사용자가 직접 입력할 때 자동으로 표시
회원가입, 주문서 작성, 본인인증 시에 사용자의 핸드폰 번호를 자주 입력합니다.
이 때는 <EditText />에 addTextChangedListener() 리스너에 PhonePhoneNumberFormattingTextWatcher를 지정하여 하이픈(-)을 자동으로 표현이 가능합니다.
첫째. xml 파일에 아래 EditText 레이아웃을 추가합니다.
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/editPhoneNumber"
android:hint="휴대전화 번호 입력"
android:inputType="phone"
android:maxLength="13"/>
둘째. Java 파일에 EditText 초기화 후, addTextChangedListener() 추가합니다.
EditText phonNumber = (EditText) view.findViewById(R.id.editPhoneNumber);
phonNumber.addTextChangedListener(new PhoneNumberFormattingTextWatcher());
'안드로이드' 카테고리의 다른 글
[MMS 서비스] 문자 이미지 첨부, 최대 용량은? (0) | 2021.04.29 |
---|---|
[라인개발실록] 안드로이드 앱 빌드 시간 꿀팁 (feat. 질문 채택) (0) | 2021.04.28 |
[Kotlin] Fragment에서 Activity 함수 호출하는 방법 (0) | 2021.04.16 |
[실무 라이브러리] RxJava와 Coroutines 비교해보자 (0) | 2021.04.10 |
액티비티 상태 저장 onRestoreInstanceState(), onSaveInstanceState() (0) | 2021.03.29 |
댓글