监听键盘事件的框架 IQKeyboardManager 使用方法
这个库的下载地址:https://github.com/hackiftekhar/IQKeyboardManager
#import "IQKeyboardManager.h"
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
IQKeyboardManager *manager = [IQKeyboardManagersharedManager];
manager.enable =YES;
manager.shouldResignOnTouchOutside =YES;
manager.shouldToolbarUsesTextFieldTintColor =YES;
//控制键盘上面的Done是否显示
manager.enableAutoToolbar =NO;
returnYES;
}
enable控制整个功能是否启用。
shouldResignOnTouchOutside控制点击背景是否收起键盘。
shouldToolbarUsesTextFieldTintColor 控制键盘上的工具条文字颜色是否用户自定义。
enableAutoToolbar控制是否显示键盘上的工具条。
#import "IQKeyboardReturnKeyHandler.h"
@interface ViewController ()
@property (nonatomic,strong) IQKeyboardReturnKeyHandler *returnKeyHandler;
@end
@implementation ViewController
- (void)viewDidLoad {
[superviewDidLoad];
self.returnKeyHandler = [[IQKeyboardReturnKeyHandleralloc] initWithViewController:self];
self.returnKeyHandler.lastTextFieldReturnKeyType =UIReturnKeyDone;
self.returnKeyHandler.toolbarManageBehaviour = IQAutoToolbarBySubviews;
UITextField* field = [[UITextFieldalloc]initWithFrame:CGRectMake(10,500, 400,40)];
field.backgroundColor = [UIColororangeColor];
[self.viewaddSubview:field];
}
设置returnKeyHandler,可以点击键盘上的next键,自动跳到下一个输入框。最后一个输入框点击done自动收起键盘。
运行后,可以看到输入框随着键盘的弹出自动上下浮动。点击背景,键盘收起。全自动了。
这个库默认支持UITextField、UITextView、UIWebView、UIScrollView、UITableView、UICollectionView
最后要注意一点,它可以自动计算多个textField之间的先后顺序,排列依据是看addSubView的先后顺序