안녕하세요! 안드로이드 에서 EditText 를 사용할 때 알아두면 좋은 것!
1. activity_main.xml
xml 에서 EditText 사용 시 설정방법입니다~
android:hint="전화번호" text 가 빈 상태(empty) 일 떄 출력될 텍스트 설정 (javascript 의 placeholder 같은거예용)
tools:text="010-0000-0000" 보통 android:text 를 사용하죠? tools:text 는 xml의 layout preview에서 어떻게 나오는지 확인할수 있고 실제 앱에서는 표시되지 않아서 개발 시 유용하게 사용 가능합니다.
android:inputType="phone" 키보드 입력 시 전화번호 만 가능하도록 설정
android:maxLength="13" text 의 글자수 제한 (최대 길이 설정) - 보통 전화번호나 주민등록번호를 입력받을 때 사용합니다.
<EditText
android:id="@+id/et_phone"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="80"
android:hint="전화번호"
tools:text="010-0000-0000"
android:gravity="center"
android:inputType="phone"
android:maxLength="13"
android:background="@drawable/custom_check_button">
</EditText>
2. EditText 자동 하이픈(-) 설정
edittext 자동 하이픈(-) 설정을 해주려면
일단 xml 의 EdtitText 에
android:inputType="phone" 과 android:maxLength="13" 를 추가해줍니다.
android:inputType="phone"
android:maxLength="13"
액티비티 java 파일에 다음과 같은 코드를 추가해줍니다.
EditText editText = (EditText) findViewById(R.id.et_phone);
// 연락처 입력시 하이픈(-) 자동 입력
editText.addTextChangedListener(new PhoneNumberFormattingTextWatcher());
3. EditText 키보드 자동으로 올리기
액티비티 java 파일에 다음과 같은 코드를 추가해줍니다.
EditText editText = (EditText) findViewById(R.id.et_phone);
new Handler().postDelayed(new Runnable() {
public void run() {
editText.requestFocus();
InputMethodManager inputManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.showSoftInput(editText, 0);
editText.setSelection(et_phone.length());
}
}, 100);
감사합니다 :)
728x90
반응형
'🤖 안드로이드 Android' 카테고리의 다른 글
[안드로이드/Android] 구글(Google) Play 스토어 앱 배포 (0) | 2021.05.12 |
---|---|
[안드로이드/Android] 앱 데이터&캐시 (App Data&Cache) 삭제 (0) | 2021.05.11 |
[안드로이드/Android] 디바이스의 내장메모리에 .txt 파일로 Logcat 저장 (4) | 2021.05.04 |
[안드로이드/Android] 휴대폰 번호 정보 가져오기 (0) | 2021.05.03 |
[안드로이드/Android] 앱 정보 가져오기 (앱아이디, 앱이름, 패키지명, 버전이름, 버전코드) (1) | 2021.05.03 |