设置UILabel,在UIScrollView中显示HTML

时间:2015-10-07 20:28:43

标签: ios uiscrollview uilabel

我正在尝试在UILabel中显示长HMTL内容,并且我希望它正确适合宽度(如响应式HTML)。

在Android中它正确自动修复,我现在正在iOS中进行。

我所做的是一个名为UIScrollView的{​​{1}} UILabelhtmlLabel粘贴在顶部,左侧和右侧,我从UILabel

中留出一个底部空格

enter image description here

这是我的代码:

UIScrollView

但我只能得到第一行:

enter image description here

我做错了什么?

提前谢谢。

问候。

圣拉斐尔。

1 个答案:

答案 0 :(得分:0)

您需要确定标签在指定宽度下所需的文字高度。例如:

  CGFloat width = _htmlLabel.frame.size.width;
  CGRect rec = [htmlString boundingRectWithSize:CGSizeMake(width, MAXFLOAT)
                                           options:NSStringDrawingUsesLineFragmentOrigin
                                        attributes:@{label.font}
                                           context:nil];

将_htmlLabel高度设置为:

 rec.size.height;

您还需要将标签的'UILineBreakMode'设置为自动换行并将标签设置为多行:

_htmlLabel.numberOfLines = 0;
_htmlLabel.lineBreakMode = NSLineBreakByWordWrapping;