有没有办法转换":)"喜欢:detection and conversion,我在聊天应用程序中有一个UITextView
,它应该将笑脸转换为相应的表情符号。
答案 0 :(得分:0)
获取官方列表:emoji
只是一个例子:yourTextView.text = "your smiley: \u{1f642}"
如果你想动态地将表情符号转换为表情符号,你需要自己指定它并分析输入字符串或使用第三方lib,例如pods用于通过文本更改事件转换和观看输入字符串,例如:docs
答案 1 :(得分:0)
您可以使用此软件包npm中的逻辑,还可以找到一张微笑图和各自的表情符号图: https://www.npmjs.com/package/smile2emoji
答案 2 :(得分:0)
我已经基于@ emish89 https://www.npmjs.com/package/smile2emoji建议的npm软件包创建了这个简单的类。
https://gist.github.com/lorenzOliveto/f20a89e9f68276cae21497a177ad8a4c
答案 3 :(得分:0)
Swift 5
您应该为您的 textViewDidChange
实现委托 UITextView
并在其文本中找到所有需要的子字符串,然后将它们替换为 textStorage
属性:
extension ViewController : UITextViewDelegate {
func textViewDidChange(_ textView: UITextView) {
guard let text = textView.text else { return }
var index = text.startIndex
while let range = text.range(of: ":)", range: index..<text.endIndex) {
index = range.upperBound
textView.textStorage.replaceCharacters(in: NSRange(range, in: text), with: "?")
}
}
}
它在编辑或粘贴文本时有效。