监测UITextField的变化
Posted Kingdev
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了监测UITextField的变化相关的知识,希望对你有一定的参考价值。
监测UITextField的变化可以为UIControlEventEditingChanged事件添加target。
我们有时候会需要用到这个需求:输入框输入文本超过xx长度,不再允许输入其他内容!
UITextField 代理方法本身是无法满足这个需求的。(当然你可以给UITextView添加placeholder实现相同的需求,此处不做介绍。)
示例代码如下:
UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(20.f, 100.f, CGRectGetWidth(self.view.frame) - 40.f, 30.f)]; textField.backgroundColor = [UIColor whiteColor]; textField.placeholder = @"placeholder_King"; [self.view addSubview:textField]; // 添加 UIControlEventEditingChanged target事件,即可实时监测textField 内容,并做一些操作 [textField addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged];
- (void)textFieldDidChange:(UITextField *)textField { // 文本输入长度 > 6 时,不再允许输入其他内容 NSMutableString *tempStr = [NSMutableString stringWithString:textField.text]; if (tempStr.length > 6) { NSRange range = NSMakeRange(6, 1); [tempStr deleteCharactersInRange:range]; } textField.text = tempStr; }
参考资料:
以上是关于监测UITextField的变化的主要内容,如果未能解决你的问题,请参考以下文章
有一个实时监控的项目,现在我想要在C#代码中监测mysql数据库中一张表的更新变化的情况,