IQKeyboardManager,是一個鍵盤工具欄的庫:
默認支持UITextField、UITextView、UIWebView、UIScrollView、UITableView、UICollectionView
左右兩個切換按鈕用來切換不同的文本框 會根據文本框的鍵盤類型對彈出鍵盤的樣式做出調整 排列依據是看addSubView的先后順序
右邊的done是用來收起鍵盤的 另外也可以設置點擊空白區域收起鍵盤的屬性
中間的文字默認是文本框的占位文字
因為這個庫是單例模式的 也就是說無論在哪設置了一個屬性 那么這個屬性對全局都是生效的 所以一般我習慣把這個方法寫在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {}方法里面
另外 只要導入這個庫 即使不做任何操作的話 默認也是會添加工具條的
使用:
首先要導入收文件:
#import "IQKeyboardManager.h"
常用方法:
IQKeyboardManager *manager = [IQKeyboardManager sharedManager]; //控制整個功能是否啟用。 manager.enable = YES; //控制點擊背景是否收起鍵盤 manager.shouldResignOnTouchOutside = YES; //控制鍵盤上的工具條文字顏色是否用戶自定義。 注意這個顏色是指textfile的tintcolor manager.shouldToolbarUsesTextFieldTintColor = YES; //中間位置是否顯示占位文字 manager.shouldShowTextFieldPlaceholder = YES; //設置占位文字的字體 manager.placeholderFont = [UIFont boldSystemFontOfSize:17]; //控制是否顯示鍵盤上的工具條。 manager.enableAutoToolbar = YES; //某個類中禁止使用工具條 [[IQKeyboardManager sharedManager]disableToolbarInViewControllerClass:[UIViewController class]];
效果圖:
另外:這個庫還自定義了帶有展位文字的textView: