我的 UITextView 字符限制存在问题,其中表情符号计数为双倍、三倍或四倍。我希望表情符号算作 1 个字符,就像 Twitter iOS 应用程序中的那样。这是我的 shouldChangeTextInRange
方法中的代码
let characters = textView.text.characters.count + (text.characters.count - range.length)
if characters <= self.characterLimit {
// update character limit label as we type
self.characterLimitLabel.text = String(characters) + "/" + String(self.characterLimit)
return true
} else {
return false
}
在考虑表情符号时,我应该改变什么才能产生正确的结果?
最佳答案
我认为这不是一个简单的解决方案...您必须检查 unicode 值以查看每个字符是否是表情符号。您必须对这些情况进行硬编码,然后每次发布新的表情符号时都必须更新它们。我的建议是,你应该忘记表情符号会花费更多的字符......如果你想要更多信息,有一个 github 存储库可以非常简单地检查表情符号......但话又说回来,它可能会过时(如果还没有过时)。
关于ios - UITextView 表情符号字符限制计数不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38779920/