iOS如何知道自动更正或预测输入即将替换UITextView中的文本?

Ale*_*one 7 iphone autocorrect uitextfield uitextview ios

我正在尝试创建一个远程打字应用程序,其中键入一个文本视图的人会看到相同的文本出现在远程文本视图中.对于简单的击键,例如"A"或"B",我将它们按顺序发送到远程服务.

但是,启用自动更正时,文本字段或文本视图可能会在用户按空格后用更正或建议替换它们.例如:

"T-e-s-a " might be replaced with Tess or Test.
Run Code Online (Sandbox Code Playgroud)

这会导致我的远程字段说"TesaTess".我想检测这种情况并修复它.

如何检测自动更正是否会用更正后的字符串替换某些文本?

目前我正在使用此方法来处理屏幕上的光标移动.我是否必须修改此方法以考虑更改,还是有更简单的方法?

- (void)textViewDidChangeSelection:(UITextView *)textView {

    NSRange r = textView.selectedRange;

    if(r.length == 0)
    {
        /*
         Cursor moved using magnifying glass
         */

    }else{
        //the user selected some text  
        NSLog(@"Selected From: %lu length: %lu", r.location, r.length); // end position in text selection

    }

}
Run Code Online (Sandbox Code Playgroud)