我正在使用UIScrollView
自动布局来更改contentS enter code here
ize值,如下所示:
UIView
ScrollView
UIView
(contentView
)在运行时我正在添加UITextView
&有约束的UIImageView
到conentView
(上,下,左,右)
但contentView
尺寸未更改且UIScrollView
contentSize
也是。
那可能是什么问题?
答案 0 :(得分:0)
在运行时我正在添加UITextView&具有约束的UIImageView到conentView(顶部,底部,左侧,右侧)
也许你应该添加约束(上,左,高,宽)或(上,左,右,高)
如果您坚持(顶部,底部,左侧,右侧),ScrollView将保留旧的内容大小,并使您的UITextView& UIImageView(高度= 0,宽度= 0)。
答案 1 :(得分:0)
这是更新滚动视图内容大小的简洁方法。它是Swift,所以如果你在Objective C中工作,你需要一个桥接头。
extension UIScrollView {
func updateContentViewSize() {
var newHeight: CGFloat = 0
for view in subviews {
let ref = view.frame.origin.y + view.frame.height
if ref > newHeight {
newHeight = ref
}
}
let oldSize = contentSize
let newSize = CGSize(width: oldSize.width, height: newHeight + 20)
contentSize = newSize
}
}
只要在滚动视图中添加子视图,就可以在滚动视图的对象上调用它。