شما می توانید ورودی را همانطور که کاربر در یک فیلد متنی تایپ می کند، مانند وارد کردن نام، ایمیل، آدرس یا سایر اطلاعات تماس، اعتبارسنجی کنید. این اعتبار سنجی خطاها را کاهش می دهد و در وقت کاربران شما صرفه جویی می کند.
سازگاری نسخه
این پیاده سازی مستلزم آن است که 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 ) }
نکات کلیدی در مورد کد
- یک Composable را تعریف می کند که از مؤلفه
OutlinedTextField
مجدداً استفاده می کند و پارامترهای مورد نیاز را برای نمایش پیام های خطای اعتبارسنجی به عنوان انواع کاربر اضافه می کند. -
EmailViewModel
برای حفظ وضعیت و ارائه منطق اعتبارسنجی ایمیل استفاده می شود. - اگر
isError
درست باشد، UI یک نشانگر بصری از وضعیت خطای اعتبارسنجی را ارائه می دهد. - مؤلفه "فرمت ایمیل نادرست" را نمایش می دهد. تا زمانی که یک ایمیل کامل و صحیح وارد شود.
نتایج
![یک ورودی متن معتبر](https://developer.android.google.cn/static/quick-guides/content/email_validation.png?hl=fa)
![یک ورودی متن نامعتبر با خطا](https://developer.android.google.cn/static/quick-guides/content/invalid_email_format_example.png?hl=fa)
مجموعه هایی که حاوی این راهنما هستند
این راهنما بخشی از مجموعههای راهنمای Quick Guide است که اهداف توسعه Android گستردهتری را پوشش میدهد:
![](https://developer.android.google.cn/static/images/quick-guides/collection-illustration.png?hl=fa)
نمایش متن
![](https://developer.android.google.cn/static/images/quick-guides/collection-illustration.png?hl=fa)