gpt4 book ai didi

ios - UiTextView 使用表情符号移动到下一个字符错误

转载 作者:可可西里 更新时间:2023-11-01 05:55:04 26 4
gpt4 key购买 nike

在 UiTextView 中,我有一个函数可以跳转到插入符号后的下一个字符:

textView.selectedRange = NSMakeRange(textView.selectedRange.location+1,0);

当我有表情符号时它不起作用,我必须两次。

我想知道我是否可以检查插入符号后的下一个字符是否是特殊字符,所以我在插入符号位置移动 2 而不是 1。

当我尝试获取那个范围的 NSString 时,它没有给出任何信息或错误

 NSRange myRange = NSMakeRange(textView.selectedRange.location,1);
[textView.text substringWithRange:myRange]

有什么帮助吗?

最佳答案

使用 NSString rangeOfComposedCharacterSequenceAtIndex: 方法。对于大多数字符,这将返回一个长度为 1 的范围。但是对于 Unicode 值为 U+10000 或更大的字符,这将返回一个长度为 2 的范围。

这会将插入符号移动到下一个字符:

NSRange nextRange = [textView.text rangeOfComposedCharacterSequenceAtIndex:textView.selectedRange.location];
textView.selectedRange = NSMakeRange(nextRange.location + nextRange.length, 0);

关于ios - UiTextView 使用表情符号移动到下一个字符错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19306153/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com