初步确定:
    查看了YYTextView的源码, 根据问题描述主要是光标的问题
    断点调试过程中
    主要查看下面这个私有方法的实现

    • (void)_replaceRange:(YYTextRange )range withText:(NSString )text notifyToDelegate:(BOOL)notify

    如下面的代码
    image.png
    在计算完光标的位置之后,我的理解是进行了一遍光标校验操作,通过断点,发现计算出来的光标位置在这里发生了改变。
    点击进去查看
    _correctedTextRange
    的方法实现
    image.png
    继续查看
    _correctedTextPosition

    最终我的代码执行到下图红线部分
    image.png

    这时候我查看_innerText的内容是Hel,是联想词之前的内容

    回到开始的方法里面,查看源码。可以发现_innerText的内容添加是在校验光标之后的才进行处理,显而易见,问题就是在内容没有添加之前,进行光标的校验,并修改
    image.png