Description:
For a horizontal layout, value labels can collide and cause overlap when valueLabelPosition is .top or .bottom. I've been using your library for 3+ years, it's been super solid and amazing. Thank you sooo very much!
Problems I encountered when trying to implement this myself:
I didn't implement any changes because I am using SPM, but perhaps a boolean indicating the opposite of the valueLabelPosition, like:
/// Every other value label will show opposite of the value label position. If you set valueLabelPosition to .top, the second value label position would be bottom, if you set valueLabelPosition to .leading, the second value label position would be .trailing.
@IBInspectable open dynamic var inverseValueLabelPositioning: Bool = false { didSet { updateAllValueLabels() } }
or perhaps creating a valueLabelPositions array where they can be defined.
Description: For a horizontal layout, value labels can collide and cause overlap when valueLabelPosition is .top or .bottom. I've been using your library for 3+ years, it's been super solid and amazing. Thank you sooo very much!
Problems I encountered when trying to implement this myself: I didn't implement any changes because I am using SPM, but perhaps a boolean indicating the opposite of the valueLabelPosition, like:
/// Every other value label will show opposite of the value label position. If you set valueLabelPosition to .top, the second value label position would be bottom, if you set valueLabelPosition to .leading, the second value label position would be .trailing.
@IBInspectable open dynamic var inverseValueLabelPositioning: Bool = false { didSet { updateAllValueLabels() } }
or perhaps creating a valueLabelPositions array where they can be defined.
slider.valueLabelPositions = [.top, .bottom]