所以我们最近遇到了一个问题,我们的键盘扩展在随附的应用程序中显示了错误的建议。我们发现从 context ( super.textDocumentProxy.documentContextBeforeInput
) 返回的文本都是错误的,并且由于它是内置的苹果组件,因此文本插入肯定有问题。我们有以下插入文本的实现:
if (replaceRange.length > 0) {
[self.textView.textStorage replaceCharactersInRange:replaceRange withString:selectedWord];
[textView setSelectedRange:NSMakeRange(newLocation, 0)]; //Place cursor after inserted word
} else {
[self.textView insertText:selectedWord];
}
会返回类似:
那里。. .
而真正的文本会是这样的:
就在那里。这是一个小测试。测试一切。