我一直在为此苦苦挣扎。用户需要在 TextView 中输入文本和/或表情符号。我有一个表情符号键盘,上面有我自己的图像来输入表情符号。问题是我需要在文本中为表情符号保留一个符号(例如“(微笑)”,同时在符号顶部显示表情符号图片。
所以用户会看到“Hello [the picture]”,而 TextView.text 属性会返回“Hello (smile)”。
在 Android 上,您可以使用跨区字符串,它允许您用图像覆盖部分文本。因此,在 Android 上,我设法毫无问题地实现了我的目标。
在 iOS 上,我认为 Attributed Strings 是与 Spanned 类似的概念,但到目前为止,我所能做的只是用图片完全替换表情符号的代码(使用 NSTextAttachment)。有没有一种方法可以实现我的目标,而不必维护一个包含图片的属性字符串和一个包含代码的单独字符串?