36 lines
1.5 KiB
Swift
36 lines
1.5 KiB
Swift
//
|
|
// StandardFooterView.swift
|
|
// MVMCoreUI
|
|
//
|
|
// Created by Scott Pfeil on 3/11/19.
|
|
// Copyright © 2019 Verizon Wireless. All rights reserved.
|
|
//
|
|
|
|
import UIKit
|
|
|
|
open class StandardFooterView: ViewConstrainingView {
|
|
open override func setupView() {
|
|
super.setupView()
|
|
topMarginPadding = PaddingDefaultVerticalSpacing
|
|
bottomMarginPadding = PaddingDefaultVerticalSpacing
|
|
shouldSetupMoleculeFromJSON = true
|
|
updateViewVerticalDefaults = true
|
|
updateViewHorizontalDefaults = true
|
|
}
|
|
|
|
open override func setWithJSON(_ json: [AnyHashable : Any]?, delegateObject: MVMCoreUIDelegateObject?, additionalData: [AnyHashable : Any]?) {
|
|
super.setWithJSON(json, delegateObject: delegateObject, additionalData: additionalData)
|
|
|
|
// This molecule will by default handle margins.
|
|
(molecule as? MVMCoreUIViewConstrainingProtocol)?.shouldSetHorizontalMargins?(false)
|
|
(molecule as? MVMCoreUIViewConstrainingProtocol)?.shouldSetVerticalMargins?(false)
|
|
}
|
|
|
|
public override class func estimatedHeight(forRow json: [AnyHashable : Any]?, delegateObject: MVMCoreUIDelegateObject?) -> CGFloat {
|
|
if let moleculeJSON = json?.optionalDictionaryForKey(KeyMolecule), let height = MVMCoreUIMoleculeMappingObject.shared()?.getMoleculeClass(withJSON: moleculeJSON)?.estimatedHeight?(forRow: moleculeJSON, delegateObject: delegateObject) {
|
|
return height + PaddingDefaultVerticalSpacing + PaddingDefaultVerticalSpacing
|
|
}
|
|
return 42
|
|
}
|
|
}
|