안녕하세요 ~
오늘은 안드로이드에서 스틱 코드를 사용해 이메일 형식을 체크하는 기능을 한번 만들어 보겠습니다 : )
스틱 코드란?
자 그러면 만들어볼까요 ~
1. 프로젝트 생성
안드로이드 최신 버전을 설치하고 시작해 주세요. (developer.android.com/studio?hl=ko)
▶ "Create New Project"를 눌러 새로운 프로젝트를 생성해 줍니다.
▶ 초기 템플릿을 설정하는 창입니다 Empty Activity로 만들어줍니다.
▶ 프로젝트 명을 정해주고, 완료를 눌러줍니다.
▶ 이렇게 프로젝트를 만들었습니다. 이제 레이아웃을 그려보겠습니다.
2. 레이아웃 그리기
▶ 프로젝트에서 res > layout > activity_main.xml로 이동해 줍니다.
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:id="@+id/title"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="100dp"
android:layout_marginTop="100dp"
android:layout_marginRight="100dp"
android:text="이메일 체크 기능"
android:textSize="30dp"
android:textStyle="bold"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<EditText
android:id="@+id/input_email"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="30dp"
android:layout_marginTop="50dp"
android:layout_marginEnd="30dp"
android:ems="10"
android:inputType="textPersonName"
android:hint="이메일을 입력해 주세요."
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/title" />
<TextView
android:id="@+id/check_email_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="30dp"
android:layout_marginTop="50dp"
android:layout_marginEnd="30dp"
android:text="검사 결과 : "
android:textSize="20dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/input_email"
app:layout_constraintVertical_bias="0.0" />
<TextView
android:id="@+id/check_email_result"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_marginStart="10dp"
android:layout_marginEnd="30dp"
android:textSize="20dp"
app:layout_constraintBottom_toBottomOf="@+id/check_email_title"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/check_email_title"
app:layout_constraintTop_toTopOf="@+id/check_email_title" />
</androidx.constraintlayout.widget.ConstraintLayout>
▶ 값을 입력받을 뷰와 입력받은 값이 이메일인지 체크하고 결과 값을 보여줄 뷰를 만들어 줍니다.
3. 실시간 이메일 정규식 체크 기능 구현
밑 작업이 끝났습니다 이제 기능을 추가해 보도록 하겠습니다.
▶ MainActivity.java 파일로 이동해 줍니다.
▶ 위에서 만든 레이아웃에서 텍스트를 인풋 하는 뷰의 아이디 값에 EditText 변수와 연결해주는 작업입니다.
▶ 스틱 코드에서 텍스트의 변화를 체크해주는 코드를 불러옵니다.
▶ 불러온 코드의 "inputTextView" 부분에 inputEmail을 입력해 줍니다.
▶ 아래쪽에 스틱 코드에서 이메일 형식을 체크해주는 코드를 불러옵니다.
▶ 위에서 만든 레이아웃에서 이메일 정규식을 검사한 결과 값을 띄워주는 뷰의 아이디 값에 textView 변수와 연결해주는 작업입니다.
▶ 인풋 창에 입력되는 텍스트에 변화가 있을 때마다 인풋 창의 텍스트를 가져와 이메일 정규식을 체크한 후, 결과를 세팅해주는 코드입니다.
4. 기능 테스트
자 이제 기능 구현이 끝났습니다 한번 테스트해보겠습니다.
잘 동작하는 걸 확인할 수 있습니다 긴 글 봐주셔서 감사합니다.
사용한 스틱 코드 코드 링크
▶ 텍스트 변화 체크하는 기능
stickode.com/detail.html?no=1890
▶ 이메일 형식 체크하는 기능
'안드로이드 자바' 카테고리의 다른 글
[Java][Android] 안드로이드 뷰페이저 (0) | 2021.02.17 |
---|---|
[Java][Android] 바텀 네비게이션 with 프래그먼트 만들기 (6) | 2021.02.16 |
[Java][Android] 안드로이드 액티비티 생명주기 (0) | 2021.02.14 |
[Java][Android] 내 입맛대로 다이얼로그 커스텀하기 (0) | 2021.02.12 |
[Java][Android] 안드로이드 - 토스트(Toast) (0) | 2021.02.11 |