updated baseViewController, fixed issues with container controls for the examples
Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
This commit is contained in:
parent
832890abf7
commit
349ddf6cce
@ -16,13 +16,11 @@ public class BaseViewController: UIViewController, Initable {
|
||||
}
|
||||
|
||||
private let edgeSpacing = 16.0
|
||||
private let topBottomSpacing = 20.0
|
||||
|
||||
//--------------------------------------------------
|
||||
// MARK: - Combine Properties
|
||||
//--------------------------------------------------
|
||||
public var subscribers = Set<AnyCancellable>()
|
||||
public var firstRender: Bool = false
|
||||
|
||||
//--------------------------------------------------
|
||||
// MARK: - Properties
|
||||
@ -83,7 +81,7 @@ public class BaseViewController: UIViewController, Initable {
|
||||
return UIStackView().with {
|
||||
$0.translatesAutoresizingMaskIntoConstraints = false
|
||||
$0.alignment = .fill
|
||||
$0.distribution = .fillProportionally
|
||||
$0.distribution = .fill
|
||||
$0.axis = .vertical
|
||||
$0.spacing = 10
|
||||
}
|
||||
@ -108,28 +106,35 @@ public class BaseViewController: UIViewController, Initable {
|
||||
embed(scrollViewController)
|
||||
scrollViewController.scrollView.alwaysBounceVertical = true
|
||||
scrollViewController.contentView = contentView
|
||||
|
||||
let spacerView = UIView().with{
|
||||
$0.translatesAutoresizingMaskIntoConstraints = false
|
||||
}
|
||||
|
||||
contentView.addSubview(contentTopView)
|
||||
contentView.addSubview(contentBottomView)
|
||||
contentView.addSubview(spacerView)
|
||||
contentBottomView.addSubview(formStackView)
|
||||
|
||||
contentTopView.topAnchor.constraint(equalTo: contentView.topAnchor, constant: edgeSpacing).isActive = true
|
||||
contentTopView.leadingAnchor.constraint(equalTo: contentView.leadingAnchor, constant: edgeSpacing).isActive = true
|
||||
contentTopView.trailingAnchor.constraint(equalTo: contentView.trailingAnchor, constant: -edgeSpacing).isActive = true
|
||||
|
||||
contentBottomView.topAnchor.constraint(equalTo: contentTopView.bottomAnchor, constant: edgeSpacing).isActive = true
|
||||
contentBottomView.leadingAnchor.constraint(equalTo: contentView.leadingAnchor, constant: edgeSpacing).isActive = true
|
||||
contentBottomView.trailingAnchor.constraint(equalTo: contentView.trailingAnchor, constant: -edgeSpacing).isActive = true
|
||||
contentBottomView.bottomAnchor.constraint(lessThanOrEqualTo: contentView.bottomAnchor, constant: -edgeSpacing).isActive = true
|
||||
|
||||
formStackView.topAnchor.constraint(equalTo: contentBottomView.topAnchor, constant: edgeSpacing).isActive = true
|
||||
formStackView.leadingAnchor.constraint(equalTo: contentBottomView.leadingAnchor, constant: edgeSpacing).isActive = true
|
||||
formStackView.trailingAnchor.constraint(equalTo: contentBottomView.trailingAnchor, constant: -edgeSpacing).isActive = true
|
||||
formStackView.bottomAnchor.constraint(equalTo: contentBottomView.bottomAnchor, constant: -100).isActive = true
|
||||
contentTopView.pinTop(edgeSpacing)
|
||||
contentTopView.pinLeading(edgeSpacing)
|
||||
contentTopView.pinTrailing(edgeSpacing)
|
||||
contentBottomView.pinTop(contentTopView.bottomAnchor, edgeSpacing)
|
||||
contentBottomView.pinLeading(edgeSpacing)
|
||||
contentBottomView.pinTrailing(edgeSpacing)
|
||||
|
||||
spacerView
|
||||
.pinTop(contentBottomView.bottomAnchor, 100)
|
||||
.pinLeading()
|
||||
.pinTrailing()
|
||||
.pinBottom()
|
||||
|
||||
formStackView.pinToSuperView()
|
||||
|
||||
view.addSubview(picker)
|
||||
picker.leadingAnchor.constraint(equalTo: view.safeAreaLayoutGuide.leadingAnchor).isActive = true
|
||||
picker.trailingAnchor.constraint(equalTo: view.safeAreaLayoutGuide.trailingAnchor).isActive = true
|
||||
picker.bottomAnchor.constraint(equalTo: view.safeAreaLayoutGuide.bottomAnchor).isActive = true
|
||||
picker.pinBottom()
|
||||
picker.pinLeading()
|
||||
picker.pinTrailing()
|
||||
picker.isHidden = true
|
||||
}
|
||||
|
||||
@ -144,20 +149,14 @@ public class BaseViewController: UIViewController, Initable {
|
||||
addChild(viewController)
|
||||
view.addSubview(viewController.view)
|
||||
viewController.view.translatesAutoresizingMaskIntoConstraints = false
|
||||
viewController.view.topAnchor.constraint(equalTo: view.topAnchor).isActive = true
|
||||
viewController.view.leadingAnchor.constraint(equalTo: view.leadingAnchor).isActive = true
|
||||
viewController.view.trailingAnchor.constraint(equalTo: view.trailingAnchor).isActive = true
|
||||
viewController.view.bottomAnchor.constraint(equalTo: view.bottomAnchor).isActive = true
|
||||
viewController.view.pinToSuperView()
|
||||
viewController.didMove(toParent: self)
|
||||
}
|
||||
|
||||
open func addContentTopView(view: UIView) {
|
||||
view.translatesAutoresizingMaskIntoConstraints = false
|
||||
contentTopView.addSubview(view)
|
||||
view.leadingAnchor.constraint(equalTo: contentTopView.leadingAnchor, constant: edgeSpacing).isActive = true
|
||||
view.topAnchor.constraint(equalTo: contentTopView.topAnchor, constant: topBottomSpacing).isActive = true
|
||||
|
||||
view.trailingAnchor.constraint(lessThanOrEqualTo: contentTopView.trailingAnchor, constant: -edgeSpacing).isActive = true
|
||||
view.bottomAnchor.constraint(lessThanOrEqualTo: contentTopView.bottomAnchor, constant: -topBottomSpacing).isActive = true
|
||||
view.pinToSuperView(.init(top: edgeSpacing, left: edgeSpacing, bottom: edgeSpacing, right: edgeSpacing))
|
||||
}
|
||||
|
||||
open func addFormRow(label: String, view: UIView, stackView: UIStackView? = nil) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user