사용자가 이름, 이메일, 주소 또는 기타 연락처 정보를 입력하는 등 텍스트 필드에 입력할 때 입력을 검증할 수 있습니다. 이 유효성 검사를 통해 오류를 줄이고 사용자의 시간을 절약할 수 있습니다.
결과
버전 호환성
이 구현에서는 프로젝트 minSDK가 API 수준 21 이상으로 설정되어야 합니다.
종속 항목
사용자가 입력할 때 입력 유효성 검사
사용자가 입력하는 동안 필드 입력을 표시하고 텍스트를 검증하려면 다음 코드를 사용하세요. 정보가 검증되지 않으면 오류 메시지를 통해 사용자가 입력을 수정할 수 있습니다.
class EmailViewModel : ViewModel() { var email by mutableStateOf("") private set val emailHasErrors by derivedStateOf { if (email.isNotEmpty()) { // Email is considered erroneous until it completely matches EMAIL_ADDRESS. !android.util.Patterns.EMAIL_ADDRESS.matcher(email).matches() } else { false } } fun updateEmail(input: String) { email = input } } @Composable fun ValidatingInputTextField( email: String, updateState: (String) -> Unit, validatorHasErrors: Boolean ) { OutlinedTextField( modifier = Modifier .fillMaxWidth() .padding(10.dp), value = email, onValueChange = updateState, label = { Text("Email") }, isError = validatorHasErrors, supportingText = { if (validatorHasErrors) { Text("Incorrect email format.") } } ) } @Preview @Composable fun ValidateInput() { val emailViewModel: EmailViewModel = viewModel<EmailViewModel>() ValidatingInputTextField( email = emailViewModel.email, updateState = { input -> emailViewModel.updateEmail(input) }, validatorHasErrors = emailViewModel.emailHasErrors ) }
코드에 관한 핵심 사항
OutlinedTextField구성요소를 재사용하는 컴포저블을 정의하여 사용자가 입력할 때 유효성 검사기 오류 메시지를 표시하는 데 필요한 매개변수를 추가합니다.EmailViewModel는 상태를 유지하고 이메일 유효성 검사 로직을 제공하는 데 사용됩니다.isError이 true이면 UI에서 유효성 검사 오류 상태를 시각적으로 나타냅니다.- 완전하고 올바른 이메일이 입력될 때까지 구성요소에 '이메일 형식이 올바르지 않습니다.'가 표시됩니다.
이 가이드가 포함된 컬렉션
이 가이드는 더 광범위한 Android 개발 목표를 다루는 선별된 빠른 가이드 모음의 일부입니다.
표시 텍스트
텍스트는 모든 UI의 중심 요소입니다. 앱에서 텍스트를 표시하여 만족도 높은 사용자 환경을 제공하는 다양한 방법을 알아보세요.
사용자 입력 요청
사용자가 텍스트를 입력하고 다른 입력 수단을 사용하여 앱과 상호작용할 수 있는 방법을 구현하는 방법을 알아봅니다.
궁금한 점이나 의견이 있음
자주 묻는 질문(FAQ) 페이지에서 빠른 가이드를 확인하거나 의견을 보내주세요.