From 86f397434c82eab32deb6b882f3df95fac56e80d Mon Sep 17 00:00:00 2001 From: "Pfeil, Scott Robert" Date: Tue, 12 Jan 2021 12:36:22 -0500 Subject: [PATCH] convenience function for uistackview --- MVMCoreUI/Categories/UIStackView+Extension.swift | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/MVMCoreUI/Categories/UIStackView+Extension.swift b/MVMCoreUI/Categories/UIStackView+Extension.swift index b88dfb51..227f057d 100644 --- a/MVMCoreUI/Categories/UIStackView+Extension.swift +++ b/MVMCoreUI/Categories/UIStackView+Extension.swift @@ -14,6 +14,18 @@ extension UIStackView: MVMCoreViewProtocol { (view as? MVMCoreViewProtocol)?.updateView(size) } } + + /// A convenience function for updating molecules. If model is nil, view is hidden. + open func updateContainedMolecules(with models: [MoleculeModelProtocol?], _ delegateObject: MVMCoreUIDelegateObject?, _ additionalData: [AnyHashable: Any]?) { + for (index, item) in arrangedSubviews.enumerated() { + if let model = models[index] { + (item as? MoleculeViewProtocol)?.set(with: model, delegateObject, additionalData) + item.isHidden = false + } else { + item.isHidden = true + } + } + } } extension UIStackView: MoleculeViewProtocol { @@ -23,3 +35,4 @@ extension UIStackView: MoleculeViewProtocol { } } } +