Mobil inkişafda istifadəçi girişi və klaviaturalar: bu nədir, komponentlər və necə işləyir

Müəllif: IT Sectr Dərc olunub: 2026-07-15 Oxuma vaxtı: 9 dəq

İstifadəçi girişi mobil tətbiq ilə istifadəçi qarşılıqlı əlaqəsinin təməlidir. Məhsulun istifadəyə yararlılığı iOS-da UITextField, Android-də EditText və mobil tətbiqlərdə klaviaturaların düzgün tətbiqindən asılıdır. Apple HIG-yə görə, istifadəçi girişinin səhv idarə edilməsi mənfi rəylərin ümumi səbəbidir.

Əsas məqamlar

  • İstifadəçi girişi mobil tətbiqlərdə iOS-da UITextField və Android-də EditText vasitəsilə tətbiq edilir.
  • Mobil tətbiqlərdə klaviaturalar Keyboard Avoidance tələb edir — klaviatura görünəndə məzmunu yerdəyişmə texnikası.
  • İstifadəçi girişinin doğrulanması ani (nömrələr, kodlar) və tamamlamada (e-poçt, şifrə) bölünür.
  • Input Mask şablonlarla telefon nömrələrini, tarixləri və bank kartlarını avtomatik formatlaşdırır.
  • Text Content Type və autofillHints avtomatik doldurmanı aktivləşdirir və istifadəçi təcrübəsini yaxşılaşdırır.

Mobil tətbiqlərdə istifadəçi girişi nədir?

Mobil tətbiqlərdə istifadəçi girişi toxunma ekranı və virtual klaviatura vasitəsilə istifadəçidən tətbiqə məlumat ötürmə prosesidir. iOS-da əsas alət UITextField, Android-də isə EditText-dir. İstifadəçi girişi mətn sahələrini, qeydiyyat formalarını, axtarış sorğularını, telefon nömrələrini və təsdiqləmə kodlarını əhatə edir. İstifadəçi girişinin tətbiqinin keyfiyyəti formaların doldurulma sürətinə və mobil tətbiqin çevrilməsinə təsir edir.

İstifadəçi girişinin düzgün təşkili nəyə görə vacibdir

Mobil inkişafda istifadəçi girişinin səhv idarə edilməsi doğrulama xətalarına, zəifliklərə və istifadəçi itkisinə səbəb olur. Statista (2025)-yə görə, istifadəçilərin 67%-i iki uğursuz giriş cəhdindən sonra mobil tətbiqi silir. Düzgün istifadəçi girişi tətbiqi klaviatura növü konfiqurasiyası, doğrulama, formatlaşdırma və avtomatik doldurmanı əhatə edir. Mobil inkişafda bu aspektlər hər iki platforma tərəfindən standartlaşdırılıb.

İstifadəçi girişinin əsas komponentləri

Mobil tətbiqlərdə klaviatura iOS-da keyboardType və Android-də inputType vasitəsilə konfiqurasiya edilir. İstifadəçi ayarları avtokorreksiya, avtomatik doldurma və təhlükəsiz şifrə daxil etməni əhatə edir. iOS-da Responder Chain və Android-də fokus klaviaturanın göstərilməsini və gizlədilməsini idarə edir. Mobil tətbiqlərdə istifadəçi girişi üçün Keyboard Avoidance kritikdir — məzmun klaviatura tərəfindən gizlədilməməlidir.

iOS-da giriş sahələri: UITextField və UITextView

iOS-da əsas istifadəçi girişi elementləri tək sətirli mətn üçün UITextField və çox sətirli mətn üçün UITextView-dir. Hər ikisi redaktənin başlanğıcını, dəyişdirilməsini və sonunu idarə etmək üçün UITextFieldDelegate və UITextViewDelegate delegatlarını dəstəkləyir. iOS mobil tətbiqlərində klaviatura konfiqurasiyası keyboardType, returnKeyType və isSecureTextEntry xüsusiyyətləri vasitəsilə həyata keçirilir.

Text Content Type və avtomatik doldurma

textContentType xüsusiyyəti sistemə sahədə hansı məlumatların gözlənildiyini işarə edir — username, password, oneTimeCode, emailAddress. Bu açar qarmaqdan avtomatik doldurmanı aktivləşdirir və istifadəçi girişini sürətləndirir. Secure Text Entry olan sahələr üçün .password təyin edin ki, şifrə meneceri etimadnamələri düzgün saxlasın. textContentType istifadəsi mobil tətbiqlərdə istifadəçi girişini yaxşılaşdırır.

swift
let textField = UITextField()
textField.placeholder = "Email"
textField.keyboardType = .emailAddress
textField.textContentType = .emailAddress
textField.autocorrectionType = .no
textField.becomeFirstResponder()

Responder Chain və fokus idarəetməsi

First Responder klaviaturadan hadisələri qəbul edən aktiv sahədir. becomeFirstResponder() çağırışı klaviaturanı göstərir, resignFirstResponder() gizlədir. Responder Chain ardıcıl olaraq elementin hadisəni idarə edə biləcəyini yoxlayır. Bir neçə sahə olduqda, klaviaturanın açıq qalmaması üçün First Responder-i idarə etmək vacibdir. Mobil tətbiqlərdə istifadəçi girişi həmçinin textFieldShouldReturn tərəfindən idarə olunur — Return düyməsini basmaq növbəti sahəyə keçir.

Android-də giriş sahələri: EditText və TextInputLayout

Android-də UITextField-in analoqu EditText-dir, inputType atributu vasitəsilə tək sətirli və çox sətirli rejimi dəstəkləyir. Material sahələri üçün com.google.android.material kitabxanasından TextInputLayout istifadə edin — üzən ipucu, simvol sayğacı və xəta dəstəyi əlavə edir. Android mobil tətbiqlərində istifadəçi girişi inputType və imeOptions vasitəsilə konfiqurasiya edilir.

InputType və imeOptions

inputType atributu klaviatura növünü və giriş rejimini müəyyən edir: normal mətn üçün text, şifrələr üçün textPassword, rəqəmlər üçün number, telefon klaviaturası üçün phone. imeOptions Enter düyməsindəki hərəkəti idarə edir — Done, Next, Search, Send. Qiymətləri bitvi OR ilə birləşdirin: text|textCapSentences. Android mobil tətbiqlərində klaviaturalar autofillHints vasitəsilə avtomatik doldurmanı dəstəkləyir.

kotlin
val editText = EditText(this)
editText.inputType = InputType.TYPE_CLASS_PHONE
editText.imeOptions = EditorInfo.IME_ACTION_DONE
editText.autofillHints = "phone"

val layout = TextInputLayout(this)
layout.hint = "Номер телефона"
layout.addView(editText)

setError vasitəsilə xəta idarəetməsi

TextInputLayout.setError() giriş sahəsinin altında xəta mesajı göstərir. TextWatcher vasitəsilə ani doğrulama və formanı göndərərkən yekun doğrulamanı birləşdirin. Mobil tətbiqlərdə istifadəçi girişi həmçinin fokus daxildir — requestFocus() sahəni aktivləşdirir və klaviaturanı göstərir. Android-də istifadəçi girişi tamamlandıqda klaviaturanı gizlətmək üçün clearFocus() istifadə edin.

Mobil tətbiqlərdə klaviatura: Keyboard Avoidance

Mobil tətbiqlərdə klaviatura giriş sahələrini örtməməlidir — bu əsas UX tələbidir. Keyboard Avoidance klaviatura görünəndə məzmunu yerdəyişmə texnikasıdır. iOS-da klaviatura ölçüsünü əldə etmək və scrollView-i yerdəyişmək üçün UIResponder.keyboardWillShowNotification istifadə edin. Android-də manifestdə adjustResize təyin edin və ya CoordinatorLayout istifadə edin. Mobil tətbiqlərdə klaviaturalar iki platformada fərqli şəkildə konfiqurasiya edilir, lakin məqsəd eynidir — məzmun həmişə görünür.

iOS-da Keyboard Avoidance

iOS-da NotificationCenter vasitəsilə keyboardWillShowNotification və keyboardWillHideNotification bildirişlərinə abunə olun. İşləyicidə userInfo-dan klaviatura ölçüsünü əldə edin və UIScrollView-də contentInset təyin edin. Alternativ olaraq, yerdəyişməni avtomatik idarə edən IQKeyboardManager istifadə edin. iOS mobil inkişafında istifadəçi girişi rahat UX üçün məcburi klaviatura idarəetməsi tələb edir.

Android-də Keyboard Avoidance

Android-də əsas üsul manifestdə android:windowSoftInputMode="adjustResize" təyin etməkdir. Bu bayraq klaviatura görünəndə layout-u sıxışdırır. CoordinatorLayout üçün düymələri və sahələri qaldıran Behavior istifadə edin. Dəqiq boşluq nəzarəti üçün ViewCompat.setOnApplyWindowInsetsListener istifadə edin. Android mobil tətbiqində klaviatura həmçinin OnGlobalLayoutListener tərəfindən idarə olunur.

İstifadəçi girişinin doğrulanması və formatlaşdırılması

İstifadəçi girişinin doğrulanması mobil tətbiqlərdə məlumat emalında məcburi addımdır. Olmadan tətbiq səhv məlumat alır, bu da xətalara və zəifliklərə səbəb olur. Mobil tətbiqlərdə istifadəçi girişi iki yanaşma tələb edir: nömrələr və kodlar üçün ani doğrulama (hər simvolda) və e-poçt və şifrələr üçün yekun doğrulama. Input Mask avtomatik olaraq telefon, tarix və kart nömrəsini formatlaşdırır.

iOS və Android-də Input Mask

Input Mask mətnin avtomatik formatlaşdırıldığı giriş nümunəsini müəyyən edir. Rus telefon nömrəsi üçün maska nümunəsi: "+7 (___) ___-__-__". iOS-da Input Mask textField(_:shouldChangeCharactersIn:replacementString:) delegatı vasitəsilə tətbiq edilir. Android-də simvol mövqeyi izləmə ilə InputFilter istifadə edin. Beynəlxalq nömrələr üçün Google-dan libphonenumber kitabxanasını istifadə edin.

swift
func textField(
    _ textField: UITextField,
    shouldChangeCharactersIn range: NSRange,
    replacementString string: String
) -> Bool {
    guard let text = textField.text else { return true }
    let masked = applyPhoneMask(text, mask: "+7 (***) ***-**-**")
    textField.text = masked
    return false
}

iOS və Android yanaşmalarının müqayisəsi

ParametriOSAndroid
Tək sətirli sahəUITextFieldEditText
Çox sətirli sahəUITextViewEditText + textMultiLine
Üzən ipucuattributedPlaceholderTextInputLayout
Klaviatura növükeyboardTypeinputType
Təhlükəsiz girişisSecureTextEntrytextPassword
Avtomatik doldurmatextContentTypeautofillHints
Delegat və ya ListenerUITextFieldDelegateTextWatcher
Doğrulama xətasıXüsusi UILabelTextInputLayout.setError()

Tez-tez verilən suallar

iOS-da proqramlı şəkildə klaviaturanı necə göstərmək olar?

UITextField və ya UITextView-də becomeFirstResponder() çağırın. Gizlətmək üçün resignFirstResponder() istifadə edin. Sahənin görünən və bloklanmamış olduğundan əmin olun.

Android-də inputType və imeOptions arasında fərq nədir?

inputType klaviatura növünü (mətn, rəqəmlər, e-poçt) müəyyən edir. imeOptions Enter düyməsindəki hərəkəti (Done, Next, Search) idarə edir. Onlar müstəqil işləyir və tez-tez birləşdirilir.

iOS-da xüsusi Input Mask necə yaratmaq olar?

textField(_:shouldChangeCharactersIn:replacementString:) delegatından istifadə edin və mətni əl ilə formatlaşdırın. Və ya "+7 ([000]) [000]-[00]-[00]" kimi nümunələrlə InputMask kitabxanasından istifadə edin.

Android-də klaviatura niyə giriş sahəsini örtür?

Manifestdə android:windowSoftInputMode="adjustResize" təyin edin. CoordinatorLayout istifadə edirsinizsə, düymələri və sahələri qaldırmaq üçün Behavior konfiqurasiyasını yoxlayın.

SMS-dən təsdiqləmə kodunun girişini necə idarə etmək olar?

iOS-da textContentType = .oneTimeCode istifadə edin. Android-də autofillHints = "smsCode" istifadə edin. Sistem qəbul edildikdə SMS-dən kodu avtomatik dolduracaq.

Xülasə

  • İstifadəçi girişi mobil tətbiqlərdə iOS-da UITextField və Android-də EditText ilə keyboardType və inputType konfiqurasiyası ilə tətbiq edilir.
  • Mobil tətbiqlərdə klaviaturalar Keyboard Avoidance tələb edir — Android-də adjustResize və iOS-da keyboardWillShowNotification vasitəsilə məzmun yerdəyişməsi.
  • İstifadəçi girişinin doğrulanması ani (nömrələr, kodlar) və yekun (e-poçt, şifrə) bölünür, hər biri öz alətləri ilə.
  • Input Mask UITextField delegatı və ya InputFilter vasitəsilə telefon nömrələrini, tarixləri və bank kartlarını avtomatik formatlaşdırır.
  • Text Content Type iOS-da və autofillHints Android-də sistem və şifrə menecerlərindən avtomatik doldurmanı aktivləşdirir.
  • Mobil inkişafda istifadəçi girişi iOS-da Responder Chain və Android-də fokus idarəetməsini əhatə edir.
  • Mobil tətbiqlərdə klaviatura rahat UX üçün imeOptions, autocorrectionType və textContentType vasitəsilə konfiqurasiya edilir.

Açar təslim mobil tətbiq hazırlayacağıq

IT Sectr 2017-ci ildən startaplar və bizneslər üçün iOS və Android tətbiqləri yaradır. Sizə məsləhət verəcəyik və ən yaxşı həlli təklif edəcəyik.

Layihəni müzakirə et