Removing hardcoded constraints replacing with multiplier

This commit is contained in:
Prateek Arora 2020-02-18 19:01:08 +05:30
parent f8fea032b5
commit a7ebc798d2
2 changed files with 16 additions and 23 deletions

View File

@ -12,11 +12,6 @@ import Foundation
let wheel = GraphView(frame: .zero) let wheel = GraphView(frame: .zero)
let leftLabel = Label(frame: .zero) let leftLabel = Label(frame: .zero)
let rightLabel = Label(frame: .zero) let rightLabel = Label(frame: .zero)
let leftLabelWidthConstant : CGFloat = 151.0
let rightLabelWidthConstant : CGFloat = 84.0
let wheelTrailingConstant : CGFloat = -72.0
let rightLabelLeadingAnchorConstant : CGFloat = 8.0
//------------------------------------------------- //-------------------------------------------------
// MARK: - View Cycle // MARK: - View Cycle
//------------------------------------------------- //-------------------------------------------------
@ -41,33 +36,31 @@ import Foundation
NSLayoutConstraint.constraintPinSubview(toSuperview: contentView) NSLayoutConstraint.constraintPinSubview(toSuperview: contentView)
contentView.translatesAutoresizingMaskIntoConstraints = false contentView.translatesAutoresizingMaskIntoConstraints = false
//------------------------------------------------- //-------------------------------------------------
// MARK: - Constraining // MARK: - Constraining
//------------------------------------------------- //-------------------------------------------------
self.translatesAutoresizingMaskIntoConstraints = false self.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([ NSLayoutConstraint.activate([
leftLabel.leadingAnchor.constraint(equalTo: contentView.leadingAnchor), leftLabel.leadingAnchor.constraint(equalTo: contentView.leadingAnchor),
leftLabel.topAnchor.constraint(equalTo: contentView.topAnchor), leftLabel.topAnchor.constraint(equalTo: contentView.topAnchor),
leftLabel.bottomAnchor.constraint(equalTo: contentView.bottomAnchor), leftLabel.bottomAnchor.constraint(equalTo: contentView.bottomAnchor),
leftLabel.widthAnchor.constraint(lessThanOrEqualToConstant: leftLabelWidthConstant) leftLabel.widthAnchor.constraint(equalTo: contentView.widthAnchor, multiplier: 0.3)
])
let rightLabelTrailing = rightLabel.trailingAnchor.constraint(equalTo: contentView.trailingAnchor)
rightLabelTrailing.priority = .defaultHigh
NSLayoutConstraint.activate([
rightLabelTrailing,
rightLabel.leadingAnchor.constraint(greaterThanOrEqualTo : wheel.trailingAnchor, constant: rightLabelLeadingAnchorConstant),
rightLabel.topAnchor.constraint(equalTo: contentView.topAnchor),
rightLabel.bottomAnchor.constraint(equalTo: contentView.bottomAnchor),
rightLabel.widthAnchor.constraint(lessThanOrEqualToConstant: rightLabelWidthConstant)
]) ])
NSLayoutConstraint.activate([ NSLayoutConstraint.activate([
wheel.trailingAnchor.constraint(equalTo: contentView.trailingAnchor, constant:wheelTrailingConstant),
wheel.topAnchor.constraint(equalTo: contentView.topAnchor), wheel.topAnchor.constraint(equalTo: contentView.topAnchor),
wheel.bottomAnchor.constraint(equalTo: contentView.bottomAnchor), wheel.bottomAnchor.constraint(equalTo: contentView.bottomAnchor),
]) ])
let rightLabelTrailing = rightLabel.trailingAnchor.constraint(equalTo: contentView.trailingAnchor)
rightLabelTrailing.priority = UILayoutPriority(900)
NSLayoutConstraint.activate([
rightLabelTrailing,
rightLabel.leadingAnchor.constraint(equalTo: wheel.trailingAnchor),
rightLabel.widthAnchor.constraint(equalTo: contentView.widthAnchor, multiplier: 0.30),
rightLabel.topAnchor.constraint(equalTo: contentView.topAnchor),
rightLabel.bottomAnchor.constraint(equalTo: contentView.bottomAnchor),
])
} }
//------------------------------------------------- //-------------------------------------------------
// MARK: - MVMCoreUIMoleculeViewProtocol // MARK: - MVMCoreUIMoleculeViewProtocol
//------------------------------------------------- //-------------------------------------------------
@ -88,7 +81,6 @@ import Foundation
rightLabel.reset() rightLabel.reset()
wheel.reset() wheel.reset()
} }
public override class func estimatedHeight(forRow molecule: MoleculeModelProtocol?, delegateObject: MVMCoreUIDelegateObject?) -> CGFloat? { public override class func estimatedHeight(forRow molecule: MoleculeModelProtocol?, delegateObject: MVMCoreUIDelegateObject?) -> CGFloat? {
return 43 return 43
} }

View File

@ -7,7 +7,8 @@
// //
import Foundation import Foundation
public class ListRVWheelModel:ListItemModelProtocol { public class ListRVWheelModel:ListItemModelProtocol,MoleculeModelProtocol {
public var backgroundColor: Color? public var backgroundColor: Color?
public var line: LineModel? public var line: LineModel?
public var hideArrow: Bool? public var hideArrow: Bool?