Label不显示scrollView中的所有文本
我希望DecriptionLabel
(Lorem Ipsum之一)将其中的所有文本都显示出来。 正如你所看到的,它正在被修剪。
这两个按钮应位于其他所有内容之下,但在DescriptionLabel
包含小文本的情况下,按钮应粘贴在视图的底部。
这就是为什么我在按钮和DescriptionLabel
之间选择了>= 20
距离,如果它有意义的话。
如何解决文本的修剪问题?
谢谢。
我最初回答如果内容不够大,如何让按钮粘到滚动视图的底部? 但由于它被标记为这个副本,我在这里发布我的答案。 请尝试按以下方式设置约束: https : //imageshack.com/a/img923/6671/Txzu98.png
诀窍是你将Button.Bottom等于ContainerView.Bottom设置为 优先级较低 (我使用750)而不是Button.Top大于或等于Label.Bottom (这里我使用默认值1000)
Label必须将行数设置为0。
按钮的高度应由高度约束设置(在本例中为50)。
Container View Height约束应该具有低优先级(在这种情况下为250)
您应该运行代码以在设备或模拟器上查看实际结果。 故事板显示它有点不同。
对于当前的问题: https : //imageshack.com/a/img923/7276/tQeT0h.png
基本思路是一样的。
按钮向下具有与上面的按钮相同的约束,没有Button.Top大于或等于Label.Bottom 。
Button Up和Button Down之间应该有固定的垂直约束。 我将Button Up设置为固定高度,并将尾随和前导约束设置为等于Button Down的尾随和前导。
约束Button.Top大于或等于Label.Bottom现在按钮Up.Top大于或等于Label.Bottom
您是否已将label的numberOfLines设置为0(表示根据文本长度自动调整标签)?
您应该添加以下约束:(在sudo代码中)
// Constraints for ScrollView scrollView.top = ViewController.view.top scrollView.leading = ViewController.view.leading scrollView.trailing = ViewController.view.trailing scrollView.bottom = ViewController.view.bottom // Constraints for View view.top = scrollView.top view.leading = scrollView.leading view.trailing = scrollView.trailing view.bottom = scrollView.bottom // Width of view view.width = ViewController.view.width
现在,您只需要确保“视图”的每个子项都有布局约束,并且它的高度将是正确的并显示textview的完整大小。
添加以下约束:
scrollview.contentview.height >= safearea.height
这可能会在界面构建器中显示错误,但在我的测试中有效:
要删除设计时错误,您可以为scrollview的contentview设置设计时内在内容大小(在我的例子中,我使用了安全区域的高度554):
另一个选项(IB中没有占位符值)是创建以下约束…
scrollview.contentview.height = safearea.height
…并将其优先级更改为低于标签的垂直内容压缩阻力的值。