IQKeyboardManager bunu sizin için KOD HATTI YOK , sadece ilgili kaynak dosyayı projeye sürükleyip bırakmanız yeterlidir. IQKeyboardManager ayrıca Aygıt Oryantasyonu , Otomatik UIToolbar Yönetimi , keyboardDistanceFromTextField ve düşündüğünüzden çok daha fazlasını destekler.
İşte Kontrol Akış Şeması:
Adım1: - küresel bildirimleri eklendi UITextField
, UITextView
ve UIKeyboard
bir tekil sınıfta. Ben buna IQKeyboardManager adını verdim .
Adım 2: - bulduysanız UIKeyboardWillShowNotification
, UITextFieldTextDidBeginEditingNotification
ya UITextViewTextDidBeginEditingNotification
bildirimler, ardından elde etmeye çalışmak topMostViewController
dan örneğini UIWindow.rootViewController
hiyerarşisi. Düzgün bir şekilde ortaya çıkarmak için UITextField
/ UITextView
üzerinde, topMostViewController.view
'nin kare ayarlanması gerekmektedir.
Adım3: -topMostViewController.view
İlk yanıt verilene göre beklenen hareket mesafesi hesaplandı UITextField
/ UITextView
.
4. adım: - Taşındı topMostViewController.view.frame
beklenen hamle mesafeye göre aşağı / yukarı.
Adım 5: - bulduysanız UIKeyboardWillHideNotification
, UITextFieldTextDidEndEditingNotification
ya UITextViewTextDidEndEditingNotification
bildirim, sonra tekrar elde etmeye çalışmak topMostViewController
dan örneğini UIWindow.rootViewController
hiyerarşisi.
Adım 6: - Hesaplanan rahatsızlık mesafesi topMostViewController.view
orijinal konumuna geri getirilmelidir.
Adım7: -topMostViewController.view.frame
Bozulan mesafeye göre geri yüklendi .
8. Adım : - Uygulama yüklemesinde tekil IQKeyboardManager sınıf örneği oluşturuldu, böylece uygulamadaki her UITextField
/ UITextView
içindeki, beklenen hareket mesafesine göre otomatik olarak ayarlanacaktır.
Bu kadar