为IOS7布置一段可变长度文本的最简洁和语义方式是什么?

时间:2013-10-13 13:01:39

标签: ios objective-c uilabel uitextview

据我所知,布置段落可以通过以下方式完成:

a)UITextView

b)UILabel

但是,我无法在IOS7中使用其中任何一个(之前在ios6.x中使用过它们)。 必须一个明确而明确的方式来布置段落,这是一个看似简单的任务。具体来说,这只是一段文字:

  • 不可编辑
  • 可变长度
  • 无论是使用故事板还是仅使用代码
  • ,都能始终如一地运作

那么, 的方法是什么?

2 个答案:

答案 0 :(得分:0)

UITextView在iOS 7上运行正常。如果您不使用自动布局,则在sizeToFit对象上调用UITextView就足够了。如果您使用自动布局,则在UITextView对象上设置高度约束,并按以下方式在代码中设置其constant

CGSize sizeThatFits = [self.textView sizeThatFits:CGSizeMake(yourAvailableWidth, MAXFLOAT)];
self.textViewHeightConstraint.constant = ceilf(sizeThatFits.height);

我最近看到了UILabel的一些问题,例如Lines missing from tall UILabel when embedding NSTextAttachment

答案 1 :(得分:0)

通过UILabel,我能够通过以下方式实现这一目标:

  • 将行设置为0
  • 将我的换行模式设置为自动换行
  • 确保将高度约束设置为“大于或等于”