IQKeyboardManager解决键盘遮挡问题
2016-09-12 16:10
435 查看
我们写界面要考虑很多用户体验问题,键盘事件的响应就是比较麻烦的一种。我们需要监听键盘事件,考虑点击背景收起键盘、考虑键盘遮挡输入框问题等等,而且每个界面都要做这么一套。这个库帮我们解决了这个事情。
这个库的下载地址:https://github.com/hackiftekhar/IQKeyboardManager
这个库是一个单例,它一旦生效,全项目任何界面都有效。让它生效的代码可以写在任意位置,我写在AppDelegate里。
设置returnKeyHandler,可以点击键盘上的next键,自动跳到下一个输入框。最后一个输入框点击done自动收起键盘。
enable控制整个功能是否启用。 shouldResignOnTouchOutside控制点击背景是否收起键盘。 shouldToolbarUsesTextFieldTintColor 控制键盘上的工具条文字颜色是否用户自定义。 enableAutoToolbar控制是否显示键盘上的工具条。 以上设置,就启用了这个库。 使用方法,代码如下:
运行后,可以看到输入框随着键盘的弹出自动上下浮动。点击背景,键盘收起。全自动了。 这个库默认支持UITextField、UITextView、UIWebView、UIScrollView、UITableView、UICollectionView最后要注意一点,它可以自动计算多个textField之间的先后顺序,排列依据是看addSubView的先后顺序。
enable控制整个功能是否启用。
shouldResignOnTouchOutside控制点击背景是否收起键盘。
shouldToolbarUsesTextFieldTintColor 控制键盘上的工具条文字颜色是否用户自定义。
enableAutoToolbar控制是否显示键盘上的工具条。
以上设置,就启用了这个库。
使用方法,代码如下:
这个库的下载地址:https://github.com/hackiftekhar/IQKeyboardManager
这个库是一个单例,它一旦生效,全项目任何界面都有效。让它生效的代码可以写在任意位置,我写在AppDelegate里。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { IQKeyboardManager *manager = [IQKeyboardManager sharedManager]; manager.enable = YES; manager.shouldResignOnTouchOutside = YES; manager.shouldToolbarUsesTextFieldTintColor = YES; manager.enableAutoToolbar = NO; return YES; }enable控制整个功能是否启用。 shouldResignOnTouchOutside控制点击背景是否收起键盘。 shouldToolbarUsesTextFieldTintColor 控制键盘上的工具条文字颜色是否用户自定义。 enableAutoToolbar控制是否显示键盘上的工具条。 以上设置,就启用了这个库。 使用方法,代码如下:enable控制整个功能是否启用。 shouldResignOnTouchOutside控制点击背景是否收起键盘。 shouldToolbarUsesTextFieldTintColor 控制键盘上的工具条文字颜色是否用户自定义。 enableAutoToolbar控制是否显示键盘上的工具条。 以上设置,就启用了这个库。 使用方法,代码如下:
#import "ViewController.h" @interface ViewController () @property (nonatomic, strong) IQKeyboardReturnKeyHandler *returnKeyHandler; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.returnKeyHandler = [[IQKeyboardReturnKeyHandler alloc] initWithViewController:self]; self.returnKeyHandler.lastTextFieldReturnKeyType = UIReturnKeyDone; self.returnKeyHandler.toolbarManageBehaviour = IQAutoToolbarBySubviews; } - (void)dealloc { self.returnKeyHandler = nil; } @end
设置returnKeyHandler,可以点击键盘上的next键,自动跳到下一个输入框。最后一个输入框点击done自动收起键盘。
enable控制整个功能是否启用。 shouldResignOnTouchOutside控制点击背景是否收起键盘。 shouldToolbarUsesTextFieldTintColor 控制键盘上的工具条文字颜色是否用户自定义。 enableAutoToolbar控制是否显示键盘上的工具条。 以上设置,就启用了这个库。 使用方法,代码如下:
运行后,可以看到输入框随着键盘的弹出自动上下浮动。点击背景,键盘收起。全自动了。 这个库默认支持UITextField、UITextView、UIWebView、UIScrollView、UITableView、UICollectionView最后要注意一点,它可以自动计算多个textField之间的先后顺序,排列依据是看addSubView的先后顺序。
enable控制整个功能是否启用。
shouldResignOnTouchOutside控制点击背景是否收起键盘。
shouldToolbarUsesTextFieldTintColor 控制键盘上的工具条文字颜色是否用户自定义。
enableAutoToolbar控制是否显示键盘上的工具条。
以上设置,就启用了这个库。
使用方法,代码如下:
相关文章推荐
- iOS开发之优秀开源框架IQKeyboardManager,零行代码解决键盘遮挡问题,如此简单解决键盘遮挡问题,IQKeyboardManager源码分解
- IQKeyBoardManager一句话解决键盘遮挡问题(使用uitextfiled和uitextview)
- IQKeyboardManager解决键盘遮挡,非常方便
- 关于使用IQKeyBoardManager键盘还是被遮挡的问题解决方案
- iOS第三方解决键盘遮挡-IQKeyboardManager
- IQKeyBoardManager - 不用写一行代码就完美解决IOS开发键盘遮挡的类库
- IQKeyBoardManager - 不用写一行代码就完美解决IOS开发键盘遮挡的类库
- 第三方解决键盘遮挡问题总结(IQKeyboardManager)
- 解决IQKeyboardManager两个textfield之间无法previous&next问题
- React-Native解决键盘遮挡问题(Keyboard遮挡问题)
- 详解React-Native解决键盘遮挡问题(Keyboard遮挡问题)
- 键盘遮挡输入框,IQKeyboardManager,ZYKeyboardUtil
- React-Native解决键盘遮挡问题(Keyboard遮挡问题)
- Android 输入法键盘遮挡控件问题的解决办法
- IOS学习笔记36—解决键盘遮挡输入框(UITextField)问题
- UIScrollView中的UITextField键盘遮挡问题的最简单解决办法
- 解决键盘遮挡输入框(UITextField)问题
- ios--解决键盘遮挡UITextField控件的问题(方式一)
- Android 输入法键盘和activity页面遮挡问题解决