ios - 如何在 Objective-C 中将任何字符串文本转换为纯文本格式

标签 ios objective-c

我正在开发一个聊天应用程序。当我从任何地方复制文本并将其粘贴到文本字段中时,我希望从任何字体、大小、颜色等中删除文本。因此它采用默认/纯文本格式。然后我想在发送文本之前设置自己的文本样式。

尝试使用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/

相关文章:

ios - 我能以某种方式获得 scrollViewDidScroll : UIScrollView Delegate method from UIPageViewController?

iphone - 计算两个日期之间的差异的问题

ios - ScrollView 不在自动布局中滚动 subview

ios - UITableViewCell ImageView 变得像素化

objective-c - 在 Objective-C 类中使用 SDCAlertView 时如何自定义它

ios - 如何在 Firebase 中保存的数据下构建数据

ios - 如何在 Swift 中更改页面 View 点的位置?

objective-c - 将图像存储在 sqlite 中还是只是对它的引用?

ios - Google Maps SDK 无法在 UIView 中正确显示?

iphone - 框架改变时得到回调