diff --git a/MVMCoreUI/Atoms/TextFields/FormEntryField.swift b/MVMCoreUI/Atoms/TextFields/FormEntryField.swift index 0a071508..67cf3d62 100644 --- a/MVMCoreUI/Atoms/TextFields/FormEntryField.swift +++ b/MVMCoreUI/Atoms/TextFields/FormEntryField.swift @@ -191,7 +191,8 @@ import UIKit fieldContainer.layer.addSublayer(bottomBar) - setNeedsLayout() + setNeedsDisplay() + layoutIfNeeded() } /** @@ -219,9 +220,7 @@ import UIKit open override func layoutSubviews() { super.layoutSubviews() - if let fieldHeight = fieldContainer?.bounds.height { - bottomBar.frame = CGRect(x: 0, y: fieldHeight, width: fieldHeight, height: 1) - } + resizeBottomBar(size: 1) } //-------------------------------------------------- @@ -247,18 +246,25 @@ import UIKit borderStrokeColor.setStroke() borderPath.stroke() } + + layoutIfNeeded() } - func resizeBottomBar(from: CGFloat, to: CGFloat, duration: CFTimeInterval) { + func resizeBottomBar(size: CGFloat) { + +// if bottomBar.frame.height == 1 { +// +// } + +// let bottomBarHeight = CABasicAnimation(keyPath: "bounds.size.height") +// bottomBarHeight.fromValue = 1 +// bottomBarHeight.toValue = 4 +// bottomBarHeight.duration = 0.1 +// bottomBarHeight.isRemovedOnCompletion = false +// bottomBar.add(bottomBarHeight, forKey: "bottomBarHeight") - let bottomBarHeight = CABasicAnimation(keyPath: "bounds.size.height") - bottomBarHeight.fromValue = from - bottomBarHeight.toValue = to - bottomBarHeight.duration = 0.1 - bottomBarHeight.isRemovedOnCompletion = false - bottomBar.add(bottomBarHeight, forKey: "bottomBarHeight") if let fieldBounds = fieldContainer?.bounds { - bottomBar.frame = CGRect(x: 0, y: fieldBounds.height, width: fieldBounds.width, height: to) + bottomBar.frame = CGRect(x: 0, y: fieldBounds.height - size, width: fieldBounds.width, height: size) } } @@ -302,6 +308,8 @@ import UIKit bottomBar.backgroundColor = UIColor.black.cgColor descriptionLabel?.textColor = .mfBattleshipGrey() + resizeBottomBar(size: 1) + refreshUI() } @@ -318,7 +326,7 @@ import UIKit feedback = errorMessage } - resizeBottomBar(from: 1, to: 4, duration: 5) + resizeBottomBar(size: 4) refreshUI() } @@ -330,6 +338,8 @@ import UIKit hideBorder = true bottomBar.backgroundColor = UIColor.clear.cgColor + resizeBottomBar(size: 1) + refreshUI() } @@ -341,6 +351,8 @@ import UIKit borderStrokeColor = .black bottomBar.backgroundColor = UIColor.black.cgColor + resizeBottomBar(size: 1) + refreshUI() } @@ -353,6 +365,8 @@ import UIKit descriptionLabel?.textColor = self.isEnabled ? UIColor.mfBattleshipGrey() : UIColor.mfSilver() bottomBar.backgroundColor = self.isEnabled ? (self.showErrorMessage ? UIColor.mfPumpkin().cgColor : UIColor.black.cgColor) : UIColor.mfSilver().cgColor + resizeBottomBar(size: 1) + refreshUI() }