iOS----------UITextField实现过滤选中状态拼音
2018年上班的第二天,就这样背了一个大锅。我们项目中有一个搜索功能,在这一期的版本中,为了增强优化,去除了过滤空格的请求,这样或许能增加很好的用户体验,恰恰相反,偷鸡不成蚀把米。没想到苹果系统的输入法竟然能自动联想,在没有选择汉字的时候,竟然能联想出来一大堆智能拼音,what???还有这种操作????输就输在了我几乎不使用苹果系统的输入法,我的手机设置一般都是把苹果的输入法删除了,直接使用搜狗。(苹果系统的输入法太难用了)不过对于测试人员来说,一定要测试各个系统的输入法,切记!切记!切记!
那现在就看一下没有屏蔽拼音之前的输入内容吧
当我输入蓝海的时候 还没有选择汉字呢 系统就会自动拼接一些拼音。
对比所打印的内容,有没有觉得很惊喜? 怎么样才能把拼音去除掉呢? 给输入框添加一个事件,在事件里面过滤掉拼音 不信你可以试一下。
_searchTextField = [[UITextField alloc]initWithFrame:CGRectMake(20, 100, kScreenWidth-40, 50)];
_searchTextField.delegate = self;
_searchTextField.backgroundColor = [UIColor orangeColor];
_searchTextField.placeholder = @"输入基金,快速定位";
_searchTextField.returnKeyType = UIReturnKeyDone;
_searchTextField.clearButtonMode = UITextFieldViewModeWhileEditing;
[_searchTextField addTarget:self action:@selector(searchTextFieldChanges:) forControlEvents:UIControlEventEditingChanged];
[self.view addSubview:_searchTextField];
- (void)searchTextFieldChanges:(UITextField *)textField{
if (textField.markedTextRange == nil) {
NSLog(@"选中了汉字之后出现的汉字:%@", textField.text);
}
}