iOS之键盘处理

在做界面的时候我们往往会涉及到键盘的处理,比如说有3个输入框:

这里写图片描述

我们想要输入完姓名后点击键盘的右下角可以让光标直接跳到邮箱的输入框里,当输入完邮箱后再点击键盘的右下角光标跳到地址的输入框里,由于是最后一个输入框再点击一下键盘应该退出去,这才符合用户体验的要求。

首先,我们应该要知道键盘右下角的按键叫做Return Key,默认是换行,我们可以在storyboard中修改它:

这里写图片描述

将textfield的代理设置为控制器,当用户点击该按钮时会调用textFieldShouldReturn:这个代理方法,我们只要在这个方法中对textfield进行处理就行:

#pragma mark - <UITextFieldDelegate>
/**
 * 当点击键盘右下角的return key时,就会调用这个方法
 */
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
    if (textField == self.nameField) {
        // 让emailField成为第一响应者
        [self.emailField becomeFirstResponder];
    } else if (textField == self.emailField) {
        // 让addressField成为第一响应者
        [self.addressField becomeFirstResponder];
    } else if (textField == self.addressField) {
        [self.view endEditing:YES];
//        [textField resignFirstResponder];
    }
    return YES;
}

在加上点击空白处退出键盘:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    [self.view endEditing:YES];
}

如果想要更换输入框的键盘:

// 更换键盘
    UIView *keyboard = [[UIView alloc] init];
    keyboard.frame = CGRectMake(0, 0, 0, 100);
    keyboard.backgroundColor = [UIColor redColor];
    self.textField.inputView = keyboard;

在键盘顶部添加工具条:(一般使用toolBar)

// 设置键盘顶部的工具条;
    UIView *toolbar = [[UIView alloc] init];
    toolbar.frame = CGRectMake(0, 0, 0, 44);
    toolbar.backgroundColor = [UIColor blueColor];
    self.textField.inputAccessoryView = toolbar;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值