refactored radiobox, fixed bug
Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
This commit is contained in:
parent
17fe50223c
commit
a2c3c94ef1
@ -155,8 +155,6 @@ open class RadioBox: Control, Changeable {
|
||||
selectorStackView.addArrangedSubview(subTextRightLabel)
|
||||
selectorLeftLabelStackView.addArrangedSubview(textLabel)
|
||||
selectorLeftLabelStackView.addArrangedSubview(subTextLabel)
|
||||
|
||||
updateSelector()
|
||||
|
||||
selectorView.pinToSuperView()
|
||||
mainStackView.pinToSuperView(.init(top: 16, left: 16, bottom: 16, right: 16))
|
||||
@ -241,12 +239,12 @@ open class RadioBox: Control, Changeable {
|
||||
|
||||
//--------------------------------------------------
|
||||
// MARK: - State
|
||||
//--------------------------------------------------
|
||||
//--------------------------------------------------
|
||||
open override func updateView() {
|
||||
updateLabels()
|
||||
updateSelector()
|
||||
updateAccessibilityLabel()
|
||||
setNeedsDisplay()
|
||||
setNeedsLayout()
|
||||
layoutIfNeeded()
|
||||
}
|
||||
|
||||
open override func updateAccessibilityLabel() {
|
||||
@ -281,31 +279,19 @@ open class RadioBox: Control, Changeable {
|
||||
/// Manages the appearance of the radioBox.
|
||||
|
||||
private var shapeLayer: CAShapeLayer?
|
||||
|
||||
open func updateSelector() {
|
||||
|
||||
open override func layoutSubviews() {
|
||||
super.layoutSubviews()
|
||||
|
||||
//get the colors
|
||||
let backgroundColor = backgroundColorConfiguration.getColor(self)
|
||||
let borderColor = borderColorConfiguration.getColor(self)
|
||||
let borderWidth = isSelected ? selectorBorderWidthSelected : selectorBorderWidth
|
||||
let borderWidth = isSelected || isHighlighted ? selectorBorderWidthSelected : selectorBorderWidth
|
||||
|
||||
selectorView.backgroundColor = backgroundColor
|
||||
selectorView.layer.borderColor = borderColor.cgColor
|
||||
selectorView.layer.cornerRadius = selectorCornerRadius
|
||||
selectorView.layer.borderWidth = borderWidth
|
||||
|
||||
layer.setNeedsDisplay()
|
||||
}
|
||||
|
||||
open override func layoutSubviews() {
|
||||
super.layoutSubviews()
|
||||
// Accounts for any size changes
|
||||
layer.setNeedsDisplay()
|
||||
}
|
||||
|
||||
open override func draw(_ layer: CALayer, in ctx: CGContext) {
|
||||
|
||||
let borderColor = borderColorConfiguration.getColor(self)
|
||||
|
||||
shapeLayer?.removeFromSuperlayer()
|
||||
shapeLayer = nil
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user