iOS9多行UITextView无法正常显示

时间:2015-10-30 05:23:54

标签: ios xcode swift swift2 ios9

我有一个使用UITextViews显示文字的应用(可能是多行),并且在iOS8中正常运行。我通过声明self.scrollEnabled = false来关闭滚动。 UITextView会在必要时将单词分解为新行,并且所有单词似乎都在工作!

但是,当我在iOS9上运行代码时,UITextView只会显示1行文本(无论有多少行文本)。

enter image description here

我意识到当我删除self.scrollEnabled = false行时,UITextView正确呈现(显示所有行),但它显然又回到了可滚动状态,这不是意图。

enter image description here

如何让UITextView渲染多行并关闭滚动?有没有人见过这个问题或有任何建议?

谢谢!

1 个答案:

答案 0 :(得分:2)

您应该设置textView的textContainerInset

下面的代码创建了一个包含多行的UITextView(您还应该为textview设置约束)

let titleTextView: UITextView = {
    let textView = UITextView()
    textView.translatesAutoresizingMaskIntoConstraints = false
    textView.text = "something to say"
    textView.textContainerInset = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0)
    textView.textColor = UIColor.lightGray
    textView.font = UIFont(name: "Helvetica", size: 14)
    return textView
}()