fixed constraints. Added comment.

This commit is contained in:
Christiano, Kevin 2019-06-18 10:53:22 -04:00
parent 53bdf0fcc5
commit 77655b5f61

View File

@ -24,7 +24,9 @@ import Foundation
var leftTextWidth: NSLayoutConstraint?
var rightTextWidth: NSLayoutConstraint?
var rightTextLabeltrailing: NSLayoutConstraint?
var rightTextLabelLeading: NSLayoutConstraint?
var leftTextTrailingLabel: NSLayoutConstraint?
//------------------------------------------------------
// MARK: - Initialization
@ -71,6 +73,7 @@ import Foundation
leftTextLabel.updateView(size)
rightTextLabel.updateView(size)
// Resolves text layout issues found between both dynamically sized labels, number is not exact to screen width but performs as required.
if leftTextLabel.hasText && rightTextLabel.hasText {
rightTextLabel.preferredMaxLayoutWidth = floor((size - 16) * 0.4)
}
@ -85,15 +88,15 @@ import Foundation
leftTextLabel.topAnchor.constraint(equalTo: topAnchor).isActive = true
leftTextLabel.leadingAnchor.constraint(equalTo: layoutMarginsGuide.leadingAnchor).isActive = true
rightTextLabelLeading = rightTextLabel.leadingAnchor.constraint(equalTo: leftTextLabel.trailingAnchor, constant: 16)
rightTextLabelLeading?.isActive = true
let leftTextBottom = leftTextLabel.bottomAnchor.constraint(equalTo: bottomAnchor)
leftTextBottom.priority = UILayoutPriority(249)
leftTextBottom.isActive = true
bottomAnchor.constraint(greaterThanOrEqualTo: leftTextLabel.bottomAnchor).isActive = true
rightTextLabelLeading = rightTextLabel.leadingAnchor.constraint(equalTo: leftTextLabel.trailingAnchor, constant: 16)
rightTextLabelLeading?.isActive = true
rightTextLabel.topAnchor.constraint(equalTo: topAnchor).isActive = true
let rightLayout = layoutMarginsGuide.trailingAnchor.constraint(equalTo: rightTextLabel.trailingAnchor)
rightLayout.priority = UILayoutPriority(rawValue: 995)
@ -127,7 +130,8 @@ import Foundation
private func constrainLeftLabel() {
rightTextLabelLeading?.isActive = false
layoutMarginsGuide.trailingAnchor.constraint(equalTo: leftTextLabel.trailingAnchor).isActive = true
leftTextTrailingLabel = layoutMarginsGuide.trailingAnchor.constraint(equalTo: leftTextLabel.trailingAnchor)
leftTextTrailingLabel?.isActive = true
leftTextWidth?.isActive = false
leftTextWidth = leftTextLabel.widthAnchor.constraint(equalTo: layoutMarginsGuide.widthAnchor, multiplier: 1.0)
leftTextWidth?.priority = UILayoutPriority(rawValue: 999)
@ -137,8 +141,10 @@ import Foundation
private func constrainRightLabel() {
rightTextLabelLeading?.isActive = false
rightTextLabel.trailingAnchor.constraint(equalTo: layoutMarginsGuide.trailingAnchor).isActive = true
rightTextLabel.leadingAnchor.constraint(equalTo: layoutMarginsGuide.leadingAnchor).isActive = true
rightTextLabeltrailing = rightTextLabel.trailingAnchor.constraint(equalTo: layoutMarginsGuide.trailingAnchor)
rightTextLabeltrailing?.isActive = true
rightTextLabelLeading = rightTextLabel.leadingAnchor.constraint(equalTo: layoutMarginsGuide.leadingAnchor)
rightTextLabelLeading?.isActive = true
rightTextWidth?.isActive = false
rightTextWidth = rightTextLabel.widthAnchor.constraint(equalTo: layoutMarginsGuide.widthAnchor, multiplier: 1.0)
rightTextWidth?.priority = UILayoutPriority(rawValue: 999)
@ -148,6 +154,8 @@ import Foundation
override open func resetConstraints() {
super.resetConstraints()
leftTextTrailingLabel?.isActive = false
rightTextLabelLeading?.isActive = false
leftTextWidth?.isActive = false
rightTextWidth?.isActive = false
constrainBothLabels()