Objective-C实时响应UITextField变化事件
来源:互联网 发布:eclipse怎么编译java 编辑:程序博客网 时间:2024/05/08 16:11
查看UITextFieldDelegate的API,我们并没有发现像UISearchBarDelegate中textDidChange类似的代理方法。- 而shouldChangeCharactersInRange代理方法里面的textField显示的是变化之前的text,所以做到实时响应UITextField变化事件需要另想办法。
1、注册消息通知:
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(changeAction:)name:UITextFieldTextDidChangeNotification object:nil];
- (void)changeAction:(NSNotification *)notification{
}
如果需要获取TextField的内容,则需要把textField定义成属性:
NSString *string = _myTextField.text ;
这种方法不会区分是哪个TextField,只要改变就会执行,不适合多个TextField的情况。
2、shouldChangeCharactersInRange:
shouldChangeCharactersInRange方法里的textField虽然显示的是变化之前的text,但是也给出了range和变化的string,替换掉之前的就可以了变化一下就可以了//textField 字符为@""空字符时候显示提示,并textField显示最小数值- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{ //-shouldChangeCharactersInRange gets called before text field actually changes its text, that's why you're getting old text value. To get the text after update use: NSString * new_text_str = [textField.text stringByReplacingCharactersInRange:range withString:string];//变化后的字符串 return YES;}
3、给UITextField添加target-action:
[_myTextField addTarget:self action:@selector(textChangeAction:) forControlEvents:UIControlEventEditingChanged];
- (void)textChangeAction:(id)sender {
UITextField textField = (UITextField )sender;
}
这种方法简单好用,推荐使用。
- Objective-C实时响应UITextField变化事件
- 实时监听UITextField的输入内容变化
- 实现UITextField值变化的实时监视
- 实现UITextField值变化的实时监视
- Objective-C UITextField 禁止粘贴
- iOS 实时监听UITextField输入事件
- Objective-C响应方法
- UIImageView事件响应使UITextField键盘消失
- 重要经验四:实时检测UITextField之的变化
- UITextField中实时监测text值的变化
- iOS 实时监听UITableViewCell中的UItextField的值的变化
- iOS开发 实时监听UITextField内容的变化
- objective-c-UI控件之-UITextField-placeholder
- objective-c-UI控件之-UITextField-clearButtonMode
- UITextField addTarget (实时监听,动态获取UITextFieldtext的值变化)
- Objective-C UITextField首行缩进的问题
- 响应变化
- Objective-C 事件处理 详解
- Android样式的开发:shape篇
- Linux
- 阶乘之递归写法
- Android学习笔记二十八:String(示例,出错代码)
- Android Viewpager+Fragment的懒加载优化问题
- Objective-C实时响应UITextField变化事件
- 大型网站技术架构整理(Ch. 5)
- 测试方法--持续更新
- Android Studio 解决 finished with non zero exit value
- 《炉石传说》架构设计赏析(2):Scene管理
- Java获取jdk的路径
- 微信升级会员卡功能: 连通公众号、微信支付
- 结构体字节对齐
- Android应用架构之Retrofit使用