我现在在UIScrollView上挣扎了一段时间。
" descriptionLabel"和" genresLabel"将在运行期间增加高度,并且与演员的差距将增加。所以我需要滚动功能才能看到演员标签。
我将contentView的高度设置为高度约束等于View优先级为250,并希望高度在需要时自动增加。
事实上没有任何事情发生,也无法滚动。
如何在自动布局上下文中自动增加contentView高度?
答案 0 :(得分:3)
您必须使ContentView的高度变得灵活,因此它应该会增加,并且scrollview的内容大小会相应增加。查看附加的屏幕截图。增加底部标签顶部约束(即495)值会使scrollview的内容大小自动增加。
答案 1 :(得分:1)
你的Actors标签是这个View的最后一个元素吗?如果它然后修复Actors:和asdfas ...到顶部,底部和左侧。现在,对于底部设置' Constant' as'使用标准值'。还要修复最顶层的元素(这里可能没有网络连接!')到顶部并设置其常量' as'使用标准值'。 试试这个,让我知道它是否有效!
我已经尝试了我告诉过你的东西。同样的图像。希望能帮助到你!
对于Actors标签约束包括:
对于asdfas标签约束如下图所示:
答案 2 :(得分:0)
只需检查此link,只需编写此内容即可添加内容视图高度: -
override func viewDidLayoutSubviews()
{
let scrollViewBounds = scrollView.bounds
let containerViewBounds = contentView.bounds
var scrollViewInsets = UIEdgeInsetsZero
scrollViewInsets.top = scrollViewBounds.size.height/2.0;
scrollViewInsets.top -= contentView.bounds.size.height/2.0;
scrollViewInsets.bottom = scrollViewBounds.size.height/2.0
scrollViewInsets.bottom -= contentView.bounds.size.height/2.0;
scrollViewInsets.bottom += 1
scrollView.contentInset = scrollViewInsets
}
答案 3 :(得分:0)
很难理解你的布局有什么问题,所以我用2个不断增长的标签创建了测试项目,一切正常,也许你会发现你的约束中有什么问题:)
https://www.dropbox.com/s/j8269c03b32gra5/scrollview-test.zip?dl=0
构建我的项目并单击“更多文本”按钮,动态地向scrollview
中的标签添加文本答案 4 :(得分:0)
对我来说,我需要在页面的最后一个元素中添加一个底部约束。更多解释here