I have an app that will have a
I tried constraining it like shown below, but I am missing a constraint and I can't find out what I need.
self.view.addSubview(self.scrollView)
self.scrollView.snp.makeConstraints { (make) in
make.edges.equalTo(self.view)
}
let contentView = UIView()
self.scrollView.addSubview(contentView)
contentView.snp.makeConstraints { (make) in
make.top.bottom.equalTo(self.scrollView)
make.left.right.equalTo(self.view)
}
contentView.addSubview(self.chart)
self.chart.snp.makeConstraints { (make) in
// http://snapkit.io/docs/
make.edges.equalTo(contentView).inset(UIEdgeInsets(top: 30, left: 0, bottom: 50, right: 0))
}
where scrollView = UIScrollView()
You need to add width/height or alignment constraints for contentView. Try this:
contentView.snp.makeConstraints { (make) in
make.top.bottom.equalTo(self.scrollView)
make.left.right.equalTo(self.view)
make.width.equalTo(self.scrollView)
make.height.equalTo(self.scrollView)
// or:
// make.centerX.equalTo(self.scrollView)
// make.centerY.equalTo(self.scrollView)
}
@Ilya Kharabet's answer for short:
contentView.snp.makeConstraints { (make) in
make.left.right.equalTo(self.view)
make.width.height.top.bottom.equalTo(self.scrollView)
}
PS:
ususally we use make.leading.trailing
, instead of make.left.right
, for RTL Support .
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With