iOS UIStackView Example
FuseAdView
objects can be used inside a UIStackView
in the same way as other UIView
objects.
For example:
View Controller
class MyStackViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Setup stack view.
let stackView = UIStackView()
stackView.alignment = .fill
stackView.axis = .vertical
stackView.distribution = .equalSpacing
stackView.spacing = 10
stackView.translatesAutoresizingMaskIntoConstraints = false
// Add some content.
let content = ["First", "Second", "Third", "Fourth", "Fifth"]
for text in content {
let label = UILabel()
label.text = text
label.translatesAutoresizingMaskIntoConstraints = false
stackView.addArrangedSubview(label)
}
// Add a banner.
let adView = FuseAdView(code: "example_adaptive_banner")
stackView.insertArrangedSubview(adView, at: 3)
// Make the page scrollable.
let scrollView = UIScrollView()
scrollView.translatesAutoresizingMaskIntoConstraints = false
scrollView.addSubview(stackView)
view.addSubview(scrollView)
NSLayoutConstraint.activate([
scrollView.topAnchor.constraint(equalTo: view.safeAreaLayoutGuide.topAnchor),
scrollView.leadingAnchor.constraint(equalTo: view.safeAreaLayoutGuide.leadingAnchor, constant: 10),
scrollView.trailingAnchor.constraint(equalTo: view.safeAreaLayoutGuide.trailingAnchor, constant: -10),
scrollView.bottomAnchor.constraint(equalTo: view.safeAreaLayoutGuide.bottomAnchor),
stackView.topAnchor.constraint(equalTo: scrollView.contentLayoutGuide.topAnchor),
stackView.leadingAnchor.constraint(equalTo: scrollView.contentLayoutGuide.leadingAnchor),
stackView.trailingAnchor.constraint(equalTo: scrollView.contentLayoutGuide.trailingAnchor),
stackView.bottomAnchor.constraint(equalTo: scrollView.contentLayoutGuide.bottomAnchor),
stackView.widthAnchor.constraint(equalTo: scrollView.frameLayoutGuide.widthAnchor),
])
}
}