IQKeyboardManager的使用

IQKeyboardManager的GitHub地址


每一個iOS應用的開發者在工作中都會遇到需要用戶鍵盤輸入數據的需求,而輸入框(UITextField/UITextView)的父界面可能是普通的UIView,也可能是UIScrollView,UITableView,UICollectionView 等。而如果輸入框位于屏幕的底部,彈起的鍵盤很可能覆蓋輸入框,導致用戶就看不到輸入結果,體驗較差。

IQKeyboardManager為此應運而生,使用IQKeyboardManager可以很容易地解決彈起鍵盤遮蓋輸入框的問題,并且易于集成,滿足大部分需求只需要少于5行代碼。更讓人驚喜的是IQKeyboardManager已經提供Swift版本。


IQKeyboardManager的使用?

首先下載第三方庫源碼導入已有項目中(也可以使用CocoaPods), 然后只需要一行代碼就可控制自動鍵盤處理事件在整個項目內是否啟用。

// iOS delegate內應用入口

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

IQKeyboardManager*manager = [IQKeyboardManagersharedManager];

manager.enable = YES; //關閉設置為NO, 默認值為NO.

manager.shouldResignOnTouchOutside=YES; //控制點擊背景是否收起鍵盤。

manager.shouldToolbarUsesTextFieldTintColor=YES; //控制鍵盤上的工具條文字顏色是否用戶自定義

manager.enableAutoToolbar=NO; //控制是否顯示鍵盤上的工具條

manager.toolbarManageBehaviour=IQAutoToolbarBySubviews;?

}

在需要用到的控制器中持有這個鍵盤管理工具

@property(nonatomic,strong)IQKeyboardReturnKeyHandler*returnKeyHandler;

- (void)viewDidLoad {

self.returnKeyHandler= [[IQKeyboardReturnKeyHandleralloc]initWithViewController:self];

self.returnKeyHandler.lastTextFieldReturnKeyType=UIReturnKeyDone;

}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容