• IQKeyboredManager使用


    这个库是一个单例,它一旦生效,全项目任何界面都有效。让它生效的代码可以写在任意位置,我写在AppDelegate里。

     

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    - (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控制是否显示键盘上的工具条。

    以上设置,就启用了这个库。

    使用方法,代码如下:

     

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    #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自动收起键盘。

    运行后,可以看到输入框随着键盘的弹出自动上下浮动。点击背景,键盘收起。全自动了。

    这个库默认支持UITextField、UITextView、UIWebView、UIScrollView、UITableView、UICollectionView

    最后要注意一点,它可以自动计算多个textField之间的先后顺序,排列依据是看addSubView的先后顺序。

  • 相关阅读:
    实用的网络流量监控脚本
    校园招聘面试总结
    简单的HttpClient使用
    大日志处理问题
    <Interview Problem>最小的“不重复数”
    <Interview Problem>二叉树根到叶节点求和值匹配
    安装后端阿里云sdk
    ModuleNotFoundError: No module named 'Crypto'
    pip install 报错 ERROR: Could not find a version that satisfies the requirement PIL (from versions: none) ERROR: No matching distribution found for PIL
    dva+antd初体验
  • 原文地址:https://www.cnblogs.com/zhaozhongpeng/p/4867581.html
Copyright © 2020-2023  润新知