关于UITextfield常见的一些需求

1.实时监测 UITextfield 值的变化


直接检测法

[UIButton addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged];

- (void) textFieldDidChange:(id) sender {

    UIButton = (UITextField *)sender;

    NSLog(@"%@,%lu" , [UIButton text] , UIButton.text.length);

}

做登录窗口的时候可以判断用户账号密码是否超过规定长度

还有可以通过KVO,代理,通知,详情

https://blog.csdn.net/qxuewei/article/details/50727617


2.如何隐藏弹出的键盘?

(1):按return隐藏键盘

UITextField.delegate = self;

UITextField.returnKeyType =UIReturnKeyDone;//改变为完成键,按return时候自动隐藏键盘

- (BOOL)textFieldShouldReturn:(UITextField *)textField{

[textField resignFirstResponder];//取消第一响应者

return YES;

}

(2):点击空白处隐藏键盘

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

如果textField在tableView上还可以实现下面的tableView的代理方法

-(void)tableView:(UITableView*)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{    [self.view endEditing:YES];

}

问题二:键盘键盘遮挡输入框的的问题

解决方案

- (void)textFieldDidBeginEditing:(UITextField *)textField {

//216是输入框在最底部时view移动的距离,具体移动多少距离,需要根据实际情况而定

self.view.y =self.view.y -216;

}

- (void)textFieldDidEndEditing:(UITextField *)textField{

self.view.y =self.view.y +216;

}



最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容