22/09/2018, 08:29

Giới thiệu thư viên IQKeyboardManager cho IOS

Thông thường khi phát triển một ứng dụng ios có sử dụng đến các from nhập liệu, login... , bạn thường gặp phải một vấn đề khi thao tác với UITextField / UITextView thì bàn phím iPhone hiển thị lên và che hết các from UITextField / UITextView. Có nhiều cách để xử lý trường hợp này ta dùng thư viện ...

Thông thường khi phát triển một ứng dụng ios có sử dụng đến các from nhập liệu, login... , bạn thường gặp phải một vấn đề khi thao tác với UITextField / UITextView thì bàn phím iPhone hiển thị lên và che hết các from UITextField / UITextView. Có nhiều cách để xử lý trường hợp này ta dùng thư viện IQKeyboardManager cho phép bạn giải quyết các vấn đề trên một cách dễ dàng không cần thêm UIScrollView hay xử lý gì autolayout . Để sử dụng IQKeyboardManager, bạn chỉ ném thư viện IQKeyboardManager vào project của bạn rồi làm theo hướng dẫn dưới đây. Cài đặt IQKeyboardManager:

IQKeyboardManager (Objective-C): 

IQKeyboardManager thông qua CocoaPods, thêm dòng pod 'IQKeyboardManager' đối với "iOS 8" pod 'IQKeyboardManager', '3.3.7' # iOS7 vào Podfile https://cocoapods.org/

IQKeyboardManager (Swift): Swift 4.2, 4.0, 3.2, 3.0 (Xcode 9)

thêm pod 'IQKeyboardManagerSwift' vào Podfile sau đó install podfile Mở project vào file AppDelegate.swift, thêm import IQKeyboardManagerSwift

import IQKeyboardManagerSwift

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

    var window: UIWindow?

    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {

      IQKeyboardManager.shared.enable = true

      return true
    }
}
        IQKeyboardManager.shared.enable = true   // kich hoat IQKeyboardManager
        IQKeyboardManager.shared.previousNextDisplayMode = IQPreviousNextDisplayMode.Default  // icon button previous/next/done tren toolbar
        IQKeyboardManager.shared.shouldShowToolbarPlaceholder = false // placeholder trong textField's
        IQKeyboardManager.shared.shouldResignOnTouchOutside = true  // tap ben ngoai ban phim se thoat khoi textField's
        IQKeyboardManager.shared.toolbarDoneBarButtonItemText = "OK"  // text button Done
        IQKeyboardManager.shared.enableDebugging = true  //  enableDebugging = true 

Kêt quả :

0