본문 바로가기
~2024.10

[Android 기초] EditText 개념과 사용 방법

by HJfan 2024. 4. 2.

00. 서론

기초를 등한시하고, 필요하다고 생각한 부분만 이론 위주로 공부했더니 혼자 프로젝트를 구현하는데

어려움을 겪게 되었다. 기초부터 다시 공부하고 정리한 기록을 남기고자 한다.


01. EditText에 대한 정의

안드로이드 스튜디오에서 사용자로부터 텍스트를 입력 받기 위한 기본적인 UI 컴포넌트이다.


02. EditText 구현을 위한 최소한의 옵션

<EditText
    android:id="@+id/editText"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />

id와 너비, 높이만 설정해 주면, 기본적인 동작은 한다.


03. EditText 컨트롤을 위한 옵션들

XML Attributions

- android:hint=" "

   사용자에게 입력 필드의 목적을 알려주기 위해 필드 내에 표시되는 텍스트

- android:inputType=" "

   입력될 텍스트의 유형을 지정한다. textPassword, emailAddress, number 등으로 지정하면 된다.

   설정한 값에 따라 EditText를 클릭했을 때 나오는 키패드의 종류와 입력 형태?가 조금씩 달라진다.

- android:maxLength=" "

   "" 안에 입력한 정수로 제한된 Length만큼만 입력을 받는다.

주요 함수들

- getText()

   EditText에서 텍스트 값을 가져온다.

- addTextChangedListener(TextWatcher watcher)

   텍스트가 변경될 때마다 알림을 받기 위한 리스너를 추가한다. 해당 함수는 사용 방법도 첨부하겠다.(뷰바인딩 사용)

        binding.mEditText.addTextChangedListener(new TextWatcher() {
            @Override
            public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
            //내가 작성하면서 발동
            }

            @Override
            public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
            //입력란에 변화가 있을 때 발동(지워지는 경우도 포함임)
            }

            @Override
            public void afterTextChanged(Editable editable) {
            //입력이 끝났을 때 발동
            }
        });