我在UIScrollView中有一个UITextView。如果我尝试显示具有特定字体大小的长文本,则文本不会显示。使用较短的文本或减小字体大小,文本会再次显示。我究竟做错了什么?
答案 0 :(得分:0)
UITextView继承自UIScrollView
> (eq? (first '('leet 'a 'f)) (first '('leet 'coder 'a 'f 'f)))
#f
因此将ScrollView放在scrollView中是一种不好的做法。 您在UITextView中看不到长文本的原因是UITextView变得可滚动。 您也没有指定您的scrollView内容宽度,因此计算的with是长文本的一行。但是您可以滚动它,因为您将滚动scrollView。更好的方法是在scrollview中设置标签并设置标签numberOfLines = 0.将标签底部填充到scrollView的底部,并在标签顶部的某些项目顶部,您将获得一个可滚动的文本。
我只是明白你不需要使用scrollView来放置你的长篇文章。
您只需使用UITextView即可。
你会得到截图上的结果
Scroller top:
滚动到底:
注意:您可以在属性检查器中禁用UITextView编辑。
但如果您出于某种原因需要滚动视图: 如上所述设置约束,也如屏幕截图所示匹配它们。
添加scrollView约束(Superview是放置scrollView的视图): - 到ReadingTimeLabel的顶部空间 - 将底部对齐到Superview / Bottom布局指南 - 与Superview对齐 - 将结尾跟踪到Superview
请在scrollView中使用UIView。用它作为容器。
为容器添加约束。 (Superview是scrollView) - 与Superview对齐 - 对齐Superview -Top Space to SuperView -Bottom Space to SuperView -Equal宽度到SuperView
在容器内添加UILabel。 (Superview是容器)。
为UILabel添加约束。 - 与Superview对齐 - 对齐Superview -Top Space to SuperView -Bottom Space to SuperView
对于属性检查器中的标签集Lines = 0或使用代码
label.numberOfLines = 0
你会得到截图上的结果
滚动顶部
滚动条底部
答案 1 :(得分:0)
尝试以下代码:
textView.sizeToFit()