iOS 显示HTML字符串

iOS显示html字符串,大概分为两种,直接加载和解析后加载。

直接加载依据实现方式又可以分为两种:

1.使用NSAttributedString来实现

这种方式,能够显示NSAttributedString的控件都可以完成,像UILabel、UITextView。同时注意,NSString是可以直接draw的,也就是UIView都可以显示NSAttributedString。

2.使用UIWebView加载

UIWebView有一个方法,[webViewloadHTMLString:stringbaseURL:nil];baseURL在有些时候很重要,如果HTML字符串使用的一些本地的资源,如js,就需要指定baseURL,说明资源的路径。而上面那种方法是不支持的。

   再来说说我遇到的情况,我一些从后台取得html字符串,我不知道内容。我先是使用NSAttributedString来做,结果是如果html很简单,一切正常,但html稍微复杂一点就坑了。使用了table、td、tr(也不是很复杂)导致很奇怪的换行,明明是一行数据,却分成几行显示。不知道它的对齐换行是依据什么来做的。使用UIWebView没有出现这些问题。

   至于解析后加载,可以搜一下,基本上只是解析了特定的几个标签,在有些场合可能会有用。




你可能感兴趣的:(ios)