我正在开发一个聊天应用程序。当我从任何地方复制文本并将其粘贴到文本字段中时,我希望从任何字体、大小、颜色等中删除文本。因此它采用默认/纯文本格式。然后我想在发送文本之前设置自己的文本样式。
尝试使用NSPlainTextDocumentType
,但没有成功。
UIFont *font = [UIFont fontWithName:@"GothamRounded-Bold" size:14];
text = [self.messagesTextView.text setFont:font];
text = NSPlainTextDocumentType;
预计文本将转换为纯文本格式,然后添加 GothamRounded-Bold size:14
样式。
最佳答案
我想知道您是否遇到了这个问题...
默认情况下,将格式化文本/富文本粘贴到文本字段将不会保留格式。它将作为纯文本粘贴,并以您为字段设置的字体显示。
尝试一下测试。将下一行复制并粘贴到文本字段中:
此应该丢失格式。
然后尝试使用此行复制/粘贴:
𝐓𝐡𝐢𝐬 应该𝒌𝒆𝒆𝒑 格式化。
第一个测试行使用 html 标签。如果您检查源代码,它应该如下所示:
<strong>This</strong> should <strong><em>lose</em></strong> formatting.
但是,第二个测试行使用 unicode 字符,如果您检查源代码,它看起来就像在这个答案中一样。
如果这就是您所看到的,则没有(简单)方法可以“删除”格式,因为没有格式。
这与用户将表情符号(例如 - 😀 -)粘贴到您的文本字段中非常相似。
关于ios - 如何在 Objective-C 中将任何字符串文本转换为纯文本格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55513662/