在iOS中显示带有标签支持的多行文本

问题描述:

我需要为我的客户iPad应用程序的“条款和条件”部分显示文本正文。这需要使用特殊的方式进行格式化,例如制表符支持等。此文本体也需要可滚动。在iOS中显示带有标签支持的多行文本

我想将最终生成的文本格式化为波纹管示例截图。

enter image description here

使用的UITextView也不好,因为它不尊重文本正文中的标签和其他属性。

任何意见是高度赞赏。

谢谢。

+0

你可以使用'UIWebView'。 – 2014-09-02 10:40:46

+0

嗨Adil Soomro,谢谢你的答案。我实际上接受了你的建议,并且工作得很好。我在下面提供了一个答案,以说明我为可能正在查看问题的其他人的利益所做的一切。再次感谢。 – hdsenevi 2014-09-03 01:28:50

我刚刚发现了一个库,您可以在textview中使用格式化文本。只是检查一下,看看它是否适合你

https://github.com/FuerteInternational/FTCoreText

+0

感谢您的回复,但是这使用了'标记语法',这意味着我必须通过文本并根据'标记语法'重新格式化它。我不认为我需要什么,因为文本的主体可能会在将来发生变化,而且我不想在每次发生时都做'标记语法'。 我发现了一个使用'UIWebView'的工作。谢谢回复。 – hdsenevi 2014-09-03 01:31:51

对于有人的缘故其他阅读这个问题,我决定后我落得这样做是非常有用的。

我最终为此使用了UIWebView

我所做的是

  • 了格式化的文本创建一个HTML页面(我用微软Word将文本导出为HTML文件,但你可以使用任何你想要只要几乎任何东西输出HTML格式化你想要的方式)
  • 上添加HTML到Xcode项目
  • 负荷的html到UIWebView像这样

    NSString *htmlFile = [[NSBundle mainBundle] pathForResource:@"TermsConditionsAgreement" ofType:@"html"]; 
    NSString* htmlString = [NSString stringWithContentsOfFile:htmlFile encoding:NSASCIIStringEncoding error:nil]; 
    [_webview setOpaque:NO]; 
    [_webview loadHTMLString:htmlString baseURL:nil]; 
    

通过使用setOpaque:NO并将WebView的背景颜色设置为“清除颜色”,Web视图将在透明背景上显示文本。