2013-01-08 37 views
1

我正在使用HTML,它在标签属性中存储了一些额外的数据。为了显示文本,我使用DTCoreText将HTML转换为NSAttributedString。当用户与一段文本交互时,我想返回并找到与该文本相对应的数据。我最初的想法是修改HTML到NSAttributedString转换并添加额外的信息作为属性,这可能不是一件容易的事。我想问问有经验的人NSAttributedString,DTCoreTextDTRichTextEditor,是否可行? 是否有可能非标准属性存储NSAttributedString作为连接也许˚F在NSAttributedString中嵌入信息

回答

1

按照NSAttributedString Class Reference:?通过名称

一种归因字符串标识的属性,使用 NSDictionary的对象来存储下一个值给定的名字。 可以 指定您希望一系列的 任何属性名称/值对字符,它是由您的应用程序来解释自定义属性 (见属性串编程指南)。如果您使用带有核心文本框架的属性 字符串,则还可以使用由该框架定义的属性 。在iOS中,标准属性键为 ,在NSAttributedString UIKit “添加参考”的“常量”部分中进行了描述。在OS X中,标准属性键在 中描述,NSAttributedString应用程序工具包 的“常量”部分添加了引用。

您可以在属性串存储任意属性。因此,您应该能够在HTML和属性字符串文本之间进行1对1的匹配,方法是手动为原始HTML和其生成的属性字符串添加唯一标识符。

如果您的HTML中不存在这样的唯一标识符,这可能意味着需要手动预处理您的HTML以将其拆分成块,然后将块转换为单独的属性字符串以添加唯一标识符 - 将改变该HTML,使其不再是真正的原文!