Cocoa:创建自定义文本视图

时间:2009-09-29 12:13:03

标签: cocoa

简而言之,我不想要原始文本,甚至不需要富文本。我想加载一个xml文档,其中包含文本部分的元数据,我想在单击给定文本部分时在抽屉中显示该元数据。超链接就是一个很好的例子;在网络应用程序中显然是微不足道的,但是虽然我不熟悉mac dev,但我似乎无法通过cocoa找到一种简单的方法来实现这一点。

有关一般策略的任何建议吗?似乎没有内置到界面构建器的HTML视图,或者我搞砸了。

1 个答案:

答案 0 :(得分:2)

我不清楚你要做什么。 声音就像你想要加载XML文档,显示文本,以及在选择某些文本位时显示各种元数据。

如果是这种情况,您应该阅读Cocoa Text SystemNSTextStorage类是NSMutableAttributedString的子类,您可以将任意属性应用于任何文本范围。选择更改后,您可以获取所选范围内的属性并使用它来更新抽屉。 (顺便说一下,抽屉真的要走了。我建议使用不同的用户界面。基于NSSplitView的界面现在更流行。)

当然,要构建NSTextStorage,您需要使用NSXMLDocumentNSXMLParser来解析XML,但是您可以获得更多控制权并且看起来更多“可可样”。

您可以使用WebView,这是Safari渲染器,但我认为您很难按照自己的方式显示文本。 Safari在没有XSLT的情况下渲染XML从未如此出色。