iOS----------UITextField实现过滤选中状态拼音

Posted 张文权的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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);

 

    }

 

}

 

以上是关于iOS----------UITextField实现过滤选中状态拼音的主要内容,如果未能解决你的问题,请参考以下文章

iOS UITextField的属性代理及通知

iOS 8 中的 UIPopoverController 错误的 UITextField 高度

iOS UITextField 响应键盘的return 事件

iOS UITextField光标/文字起始位置

简单几步实现 IOS UITextField输入长度的控制

UIAlertView 中的 iOS / UITextField