asd
This commit is contained in:
parent
759e803b3e
commit
6b3bcbea6a
@ -39,6 +39,18 @@ import Foundation
|
|||||||
return delimiters[index]
|
return delimiters[index]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
public func delimiter(for index: Int) -> String {
|
||||||
|
|
||||||
|
guard index != components.count - 1 else { return "" }
|
||||||
|
guard let delimiters = delimiters,
|
||||||
|
index < delimiters.count
|
||||||
|
else { return " " }
|
||||||
|
|
||||||
|
return delimiters[index]
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
/// A string of the picker row concatenated by whitespace or delimiters if provided.
|
/// A string of the picker row concatenated by whitespace or delimiters if provided.
|
||||||
public var selectedRowText: String {
|
public var selectedRowText: String {
|
||||||
|
|
||||||
|
|||||||
@ -52,6 +52,8 @@ import UIKit
|
|||||||
/// Validate on each entry in the textField. Default: true
|
/// Validate on each entry in the textField. Default: true
|
||||||
public var validateEachCharacter: Bool = true
|
public var validateEachCharacter: Bool = true
|
||||||
|
|
||||||
|
// private var observation: NSKeyValueObservation? = nil
|
||||||
|
|
||||||
//--------------------------------------------------
|
//--------------------------------------------------
|
||||||
// MARK: - Computed Properties
|
// MARK: - Computed Properties
|
||||||
//--------------------------------------------------
|
//--------------------------------------------------
|
||||||
@ -60,10 +62,10 @@ import UIKit
|
|||||||
public var isEnabled: Bool {
|
public var isEnabled: Bool {
|
||||||
get { entryFieldContainer.isEnabled }
|
get { entryFieldContainer.isEnabled }
|
||||||
set (enabled) {
|
set (enabled) {
|
||||||
self.titleLabel.textColor = enabled ? .mvmBlack : .mvmCoolGray3
|
titleLabel.textColor = enabled ? .mvmBlack : .mvmCoolGray3
|
||||||
self.feedbackLabel.textColor = enabled ? .mvmBlack : .mvmCoolGray3
|
feedbackLabel.textColor = enabled ? .mvmBlack : .mvmCoolGray3
|
||||||
self.entryFieldContainer.isEnabled = enabled
|
entryFieldContainer.isEnabled = enabled
|
||||||
self.entryFieldModel?.enabled = enabled
|
entryFieldModel?.enabled = enabled
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -71,10 +73,10 @@ import UIKit
|
|||||||
public var showError: Bool {
|
public var showError: Bool {
|
||||||
get { entryFieldContainer.showError }
|
get { entryFieldContainer.showError }
|
||||||
set (error) {
|
set (error) {
|
||||||
self.feedback = error ? errorMessage : entryFieldModel?.feedback
|
feedback = error ? errorMessage : entryFieldModel?.feedback
|
||||||
self.feedbackLabel.textColor = error ? entryFieldModel?.errorTextColor?.uiColor ?? .mvmBlack : .mvmBlack
|
feedbackLabel.textColor = error ? entryFieldModel?.errorTextColor?.uiColor ?? .mvmBlack : .mvmBlack
|
||||||
self.entryFieldContainer.showError = error
|
entryFieldContainer.showError = error
|
||||||
self.entryFieldModel?.showError = error
|
entryFieldModel?.showError = error
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -86,8 +88,8 @@ import UIKit
|
|||||||
public var isLocked: Bool {
|
public var isLocked: Bool {
|
||||||
get { entryFieldContainer.isLocked }
|
get { entryFieldContainer.isLocked }
|
||||||
set (locked) {
|
set (locked) {
|
||||||
self.entryFieldContainer.isLocked = locked
|
entryFieldContainer.isLocked = locked
|
||||||
self.entryFieldModel?.locked = locked
|
entryFieldModel?.locked = locked
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -95,17 +97,17 @@ import UIKit
|
|||||||
public var isSelected: Bool {
|
public var isSelected: Bool {
|
||||||
get { entryFieldContainer.isSelected }
|
get { entryFieldContainer.isSelected }
|
||||||
set (selected) {
|
set (selected) {
|
||||||
self.entryFieldContainer.isSelected = selected
|
entryFieldContainer.isSelected = selected
|
||||||
self.entryFieldModel?.selected = selected
|
entryFieldModel?.selected = selected
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Sets the text of titleLabel
|
/// Sets the text of titleLabel
|
||||||
public var title: String? {
|
public var title: String? {
|
||||||
get { titleLabel.text }
|
get { titleLabel.text }
|
||||||
set (newText) {
|
set {
|
||||||
titleLabel.text = newText
|
titleLabel.text = newValue
|
||||||
setAccessibilityString(newText)
|
setAccessibilityString(newValue)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -118,8 +120,8 @@ import UIKit
|
|||||||
/// Sets feedback text in the textField.
|
/// Sets feedback text in the textField.
|
||||||
public var feedback: String? {
|
public var feedback: String? {
|
||||||
get { feedbackLabel.text }
|
get { feedbackLabel.text }
|
||||||
set (newFeedback) {
|
set {
|
||||||
feedbackLabel.text = newFeedback
|
feedbackLabel.text = newValue
|
||||||
feedbackLabel.accessibilityElementsHidden = feedbackLabel.text?.isEmpty ?? true
|
feedbackLabel.accessibilityElementsHidden = feedbackLabel.text?.isEmpty ?? true
|
||||||
entryFieldContainer.refreshUI(updateMoleculeLayout: true)
|
entryFieldContainer.refreshUI(updateMoleculeLayout: true)
|
||||||
}
|
}
|
||||||
@ -217,6 +219,46 @@ import UIKit
|
|||||||
layoutMarginsGuide.bottomAnchor.constraint(equalTo: feedbackLabel.bottomAnchor).isActive = true
|
layoutMarginsGuide.bottomAnchor.constraint(equalTo: feedbackLabel.bottomAnchor).isActive = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
isAccessibilityElement = false
|
||||||
|
setContentCompressionResistancePriority(.required, for: .vertical)
|
||||||
|
accessibilityElements = [titleLabel, feedbackLabel]
|
||||||
|
backgroundColor = .mvmWhite
|
||||||
|
|
||||||
|
// observation = observe(\.feedbackLabel.text, options: [.new]) { [weak self] _, _ in
|
||||||
|
// self?.entryFieldContainer.refreshUI(updateMoleculeLayout: true)
|
||||||
|
// }
|
||||||
|
|
||||||
|
addSubview(titleLabel)
|
||||||
|
addSubview(entryFieldContainer)
|
||||||
|
addSubview(feedbackLabel)
|
||||||
|
|
||||||
|
|
||||||
|
titleLabelLeading = titleLabel.leadingAnchor.constraint(equalTo: layoutMarginsGuide.leadingAnchor)
|
||||||
|
titleLabelTrailing = layoutMarginsGuide.trailingAnchor.constraint(equalTo: titleLabel.trailingAnchor)
|
||||||
|
titleContainerDistance = entryFieldContainer.topAnchor.constraint(equalTo: titleLabel.bottomAnchor, constant: Padding.One)
|
||||||
|
entryFieldContainerLeading = entryFieldContainer.leadingAnchor.constraint(equalTo: layoutMarginsGuide.leadingAnchor)
|
||||||
|
feedbackContainerDistance = feedbackLabel.topAnchor.constraint(equalTo: entryFieldContainer.bottomAnchor, constant: Padding.Two)
|
||||||
|
entryFieldContainerTrailing = layoutMarginsGuide.trailingAnchor.constraint(equalTo: entryFieldContainer.trailingAnchor)
|
||||||
|
feedbackLabelLeading = feedbackLabel.leadingAnchor.constraint(equalTo: layoutMarginsGuide.leadingAnchor)
|
||||||
|
feedbackLabelTrailing = layoutMarginsGuide.trailingAnchor.constraint(equalTo: feedbackLabel.trailingAnchor)
|
||||||
|
|
||||||
|
NSLayoutConstraint.activate([
|
||||||
|
titleLabel.topAnchor.constraint(equalTo: layoutMarginsGuide.topAnchor),
|
||||||
|
titleLabelLeading!,
|
||||||
|
titleLabelLeading!,
|
||||||
|
titleContainerDistance!,
|
||||||
|
entryFieldContainerLeading!,
|
||||||
|
entryFieldContainerTrailing!,
|
||||||
|
feedbackContainerDistance!,
|
||||||
|
feedbackLabelLeading!,
|
||||||
|
feedbackLabelTrailing!,
|
||||||
|
layoutMarginsGuide.bottomAnchor.constraint(equalTo: feedbackLabel.bottomAnchor)
|
||||||
|
])
|
||||||
|
|
||||||
|
entryFieldContainer.setContentCompressionResistancePriority(.required, for: .vertical)
|
||||||
|
setupFieldContainerContent(entryFieldContainer)
|
||||||
|
*/
|
||||||
@objc open override func layoutSubviews() {
|
@objc open override func layoutSubviews() {
|
||||||
super.layoutSubviews()
|
super.layoutSubviews()
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user