Minor change to the notification view
This commit is contained in:
parent
c3ba748728
commit
2920559d84
@ -55,6 +55,14 @@ public class Notification: View {
|
|||||||
return UIDevice.isIPad ? VDSLayout.Spacing.space5X.value : VDSLayout.Spacing.space4X.value
|
return UIDevice.isIPad ? VDSLayout.Spacing.space5X.value : VDSLayout.Spacing.space4X.value
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private var minViewHeight: CGFloat {
|
||||||
|
return UIDevice.isIPad ? VDSLayout.Spacing.space16X.value : VDSLayout.Spacing.space12X.value
|
||||||
|
}
|
||||||
|
|
||||||
|
private var minContentHeight: CGFloat {
|
||||||
|
return UIDevice.isIPad ? VDSLayout.Spacing.space5X.value : VDSLayout.Spacing.space4X.value
|
||||||
|
}
|
||||||
|
|
||||||
//--------------------------------------------------
|
//--------------------------------------------------
|
||||||
// MARK: - View Properties
|
// MARK: - View Properties
|
||||||
//--------------------------------------------------
|
//--------------------------------------------------
|
||||||
@ -75,7 +83,9 @@ public class Notification: View {
|
|||||||
$0.textStyle = .bodySmall
|
$0.textStyle = .bodySmall
|
||||||
}
|
}
|
||||||
|
|
||||||
open var buttonsView = ButtonGroup()
|
open var buttonsView = ButtonGroup().with {
|
||||||
|
$0.buttonPosition = .left
|
||||||
|
}
|
||||||
|
|
||||||
//--------------------------------------------------
|
//--------------------------------------------------
|
||||||
// MARK: - Modal Properties
|
// MARK: - Modal Properties
|
||||||
@ -130,15 +140,41 @@ public class Notification: View {
|
|||||||
addSubview(mainStackView)
|
addSubview(mainStackView)
|
||||||
mainStackView.pinToSuperView(.init(top: edgeSpacing, left: edgeSpacing, bottom: edgeSpacing, right: edgeSpacing))
|
mainStackView.pinToSuperView(.init(top: edgeSpacing, left: edgeSpacing, bottom: edgeSpacing, right: edgeSpacing))
|
||||||
|
|
||||||
|
NSLayoutConstraint.activate([
|
||||||
|
heightAnchor.constraint(greaterThanOrEqualToConstant: minViewHeight),
|
||||||
|
mainStackView.heightAnchor.constraint(greaterThanOrEqualToConstant: minContentHeight)
|
||||||
|
])
|
||||||
|
|
||||||
mainStackView.addArrangedSubview(typeIcon)
|
mainStackView.addArrangedSubview(typeIcon)
|
||||||
mainStackView.addArrangedSubview(labelsView)
|
mainStackView.addArrangedSubview(labelsView)
|
||||||
mainStackView.addArrangedSubview(closeButton)
|
mainStackView.addArrangedSubview(closeButton)
|
||||||
|
|
||||||
labelsView.addArrangedSubview(titleLabel)
|
labelsView.addArrangedSubview(titleLabel)
|
||||||
labelsView.addArrangedSubview(subTitleLabel)
|
labelsView.addArrangedSubview(subTitleLabel)
|
||||||
|
labelsView.setCustomSpacing(VDSLayout.Spacing.space3X.value, after: subTitleLabel)
|
||||||
|
|
||||||
|
let firstButton = Button().with {
|
||||||
|
$0.text = "Button 1"
|
||||||
|
$0.use = .secondary
|
||||||
|
$0.size = .small
|
||||||
|
}
|
||||||
|
|
||||||
|
firstButton.publisher(for: .touchUpInside).sink { button in
|
||||||
|
print("\(button.text) has been pressed")
|
||||||
|
}.store(in: &subscribers)
|
||||||
|
|
||||||
|
|
||||||
|
#warning("Upon adding the button into the stack view, button is visible. Where as ButtonGroup with a single button is not rendered")
|
||||||
|
|
||||||
|
///This below doesn't work
|
||||||
|
buttonsView.buttons = [firstButton]
|
||||||
labelsView.addArrangedSubview(buttonsView)
|
labelsView.addArrangedSubview(buttonsView)
|
||||||
|
|
||||||
publisher(for: UITapGestureRecognizer()).sink { [weak self] _ in
|
///This below works
|
||||||
|
//labelsView.addArrangedSubview(firstButton)
|
||||||
|
|
||||||
|
|
||||||
|
closeButton.publisher(for: UITapGestureRecognizer()).sink { [weak self] _ in
|
||||||
self?.didClickOnCloseButton()
|
self?.didClickOnCloseButton()
|
||||||
}.store(in: &subscribers)
|
}.store(in: &subscribers)
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user