这个我是在地图POI检索是遇到的问题
用户在进行拼音打字时并且未确认时,搜索操作依然在执行,这样反复的执行会出现各种问题,并且影响用户体验
然而原生并没有可以判断其拼音确认的方法
只能自己搞了。。。。
添加一个观察者,也可以直接用textfield的代理方法
[[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(textFiledEditChanged:)name:@"UITextFieldTextDidChangeNotification"object:self.textField];
- (void)textFiledEditChanged:(NSNotification*)obj{
UITextField*textField = (UITextField*)obj.object;
NSString*toBeString = textField.text;
NSString*lang = [[textFieldtextInputMode]primaryLanguage];//键盘输入模式
if([langisEqualToString:@"zh-Hans"]){
UITextRange*selectedRange = [textFieldmarkedTextRange];
UITextPosition*position = [textFieldpositionFromPosition:selectedRange.endoffset:0];
if(!position) {
//执行操作
}
}else{
}
}
该方法可以判断五笔和汉字拼音
搞定!收工!