我需要渲染一个(任意大的)NSAttributedString
,在这种情况下,来自(任意长的)telnet会话的ANSI色文本。文本无需内联编辑。我已经探索了几个选项:
UITextView
似乎具有迄今为止最佳的性能,而且由于我的目标是iOS 6,因此使用归因字符串非常容易。但是,随着更多文本的添加,textview变得越来越慢,因为每当我调用setAttributedString:
并阻止UI时它就会遇到HTML DOM解析器。 TTTAttributedLabel
和OHAttributedLabel
,随着文本的增加,这些框架也逐渐变慢。公平地说,他们的标签可能不适合这类事情!UIWebView
( gag )在轮换方面存在一些问题,并保持文本大小和框架正确,但我想我可以解决它。我可以将我的属性字符串转换为HTML并使用JavaScript在接收时附加(注入)新文本。这里出色的表现令人惊讶。 所以我转向你,勇敢的互联网。独立开发者的想法? webview是我最好的选择吗?
答案 0 :(得分:0)
您可以使用UITableView并将NSAttributedString
拆分为一个子串数组,每个子串都适合单元格的标签宽度。表视图的数据源将索引到子字符串数组中,以确定应在每个单元格中放置原始字符串的哪一行。