iOS中UITextField实现过滤选中状态拼音的代码
时间:2020-11-24 17:13:24|栏目:iOS代码|点击: 次
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); } }
总结