diff --git a/VDSSample/ViewControllers/DropShawdowViewController.swift b/VDSSample/ViewControllers/DropShawdowViewController.swift index 17d3733..9ef0b5d 100644 --- a/VDSSample/ViewControllers/DropShawdowViewController.swift +++ b/VDSSample/ViewControllers/DropShawdowViewController.swift @@ -34,9 +34,13 @@ class DropShadowViewController: BaseViewController { var componentWrapper: UIView! var componentConstraints: NSLayoutConstraint.Container! - var secondView = View() - var thirdView = View() + var secondView = ShadowView() + var thirdView = ShadowView() + var shadowViews: [ShadowView] { + [component, secondView, thirdView] + } + lazy var backgroundColorPickerSelectorView = { PickerSelectorView(title: "paletteWhite", picker: self.picker, @@ -125,8 +129,8 @@ class DropShadowViewController: BaseViewController { thirdView.width(viewSize).height(viewSize) componentWrapper.pinTop().pinLeading() - secondView.pinTop() - thirdView.pinLeading().pinBottom() + secondView.pinTop(VDSLayout.space2X) + thirdView.pinLeading(VDSLayout.space2X).pinBottom(VDSLayout.space2X) secondView.pinTrailingLessThanOrEqualTo(contentTopView.trailingAnchor) secondView.pinBottomLessThanOrEqualTo(contentTopView.bottomAnchor) @@ -194,7 +198,7 @@ class DropShadowViewController: BaseViewController { //shadow1 showShadow.publisher(for: .valueChanged).sink(receiveValue: { [weak self] slider in - self?.component.showShadow = slider.isOn + self?.shadowViews.forEach { $0.showShadow = slider.isOn } self?.updateView() }).store(in: &subscribers) @@ -202,7 +206,7 @@ class DropShadowViewController: BaseViewController { opacityRange.minimumValue = 0.0 opacityRange.value = 1.0 opacityRange.publisher(for: .valueChanged).sink(receiveValue: { [weak self] slider in - self?.component.opacityRange = CGFloat(slider.value) + self?.shadowViews.forEach { $0.opacityRange = CGFloat(slider.value) } self?.updateView() }).store(in: &subscribers) @@ -210,7 +214,7 @@ class DropShadowViewController: BaseViewController { radiusRange.minimumValue = 0.0 radiusRange.value = 2.0 radiusRange.publisher(for: .valueChanged).sink(receiveValue: { [weak self] slider in - self?.component.radiusRange = CGFloat(slider.value) + self?.shadowViews.forEach { $0.radiusRange = CGFloat(slider.value) } self?.updateView() }).store(in: &subscribers) @@ -218,7 +222,7 @@ class DropShadowViewController: BaseViewController { offsetXRange.minimumValue = -20 offsetXRange.value = 2.0 offsetXRange.publisher(for: .valueChanged).sink(receiveValue: { [weak self] slider in - self?.component.offsetXRange = CGFloat(slider.value) + self?.shadowViews.forEach { $0.offsetXRange = CGFloat(slider.value) } self?.updateView() }).store(in: &subscribers) @@ -226,13 +230,13 @@ class DropShadowViewController: BaseViewController { offsetYRange.minimumValue = -20 offsetYRange.value = 2.0 offsetYRange.publisher(for: .valueChanged).sink(receiveValue: { [weak self] slider in - self?.component.offsetYRange = CGFloat(slider.value) + self?.shadowViews.forEach { $0.offsetYRange = CGFloat(slider.value) } self?.updateView() }).store(in: &subscribers) //shadow2 showShadow2.publisher(for: .valueChanged).sink(receiveValue: { [weak self] slider in - self?.component.showShadow2 = slider.isOn + self?.shadowViews.forEach { $0.showShadow2 = slider.isOn } self?.updateView() }).store(in: &subscribers) @@ -240,7 +244,7 @@ class DropShadowViewController: BaseViewController { opacityRange2.minimumValue = 0.0 opacityRange2.value = 1.0 opacityRange2.publisher(for: .valueChanged).sink(receiveValue: { [weak self] slider in - self?.component.opacityRange2 = CGFloat(slider.value) + self?.shadowViews.forEach { $0.opacityRange2 = CGFloat(slider.value) } self?.updateView() }).store(in: &subscribers) @@ -248,7 +252,7 @@ class DropShadowViewController: BaseViewController { radiusRange2.minimumValue = 0.0 radiusRange2.value = 2.0 radiusRange2.publisher(for: .valueChanged).sink(receiveValue: { [weak self] slider in - self?.component.radiusRange2 = CGFloat(slider.value) + self?.shadowViews.forEach { $0.radiusRange2 = CGFloat(slider.value) } self?.updateView() }).store(in: &subscribers) @@ -256,7 +260,7 @@ class DropShadowViewController: BaseViewController { offsetXRange2.minimumValue = -20 offsetXRange2.value = 2.0 offsetXRange2.publisher(for: .valueChanged).sink(receiveValue: { [weak self] slider in - self?.component.offsetXRange2 = CGFloat(slider.value) + self?.shadowViews.forEach { $0.offsetXRange2 = CGFloat(slider.value) } self?.updateView() }).store(in: &subscribers) @@ -264,7 +268,7 @@ class DropShadowViewController: BaseViewController { offsetYRange2.minimumValue = -20 offsetYRange2.value = 2.0 offsetYRange2.publisher(for: .valueChanged).sink(receiveValue: { [weak self] slider in - self?.component.offsetYRange2 = CGFloat(slider.value) + self?.shadowViews.forEach { $0.offsetYRange2 = CGFloat(slider.value) } self?.updateView() }).store(in: &subscribers) @@ -281,7 +285,7 @@ class DropShadowViewController: BaseViewController { viewRadiusRange.minimumValue = 0 viewRadiusRange.value = 8.0 viewRadiusRange.publisher(for: .valueChanged).sink(receiveValue: { [weak self] slider in - self?.component.viewRadiusRange = CGFloat(slider.value) + self?.shadowViews.forEach { $0.viewRadiusRange = CGFloat(slider.value) } self?.updateView() }).store(in: &subscribers) @@ -310,8 +314,8 @@ class DropShadowViewController: BaseViewController { } override func updateView() { - secondView.backgroundColor = .red - thirdView.backgroundColor = .purple + secondView.viewLightColor = .paletteYellow53 + thirdView.viewLightColor = .paletteBlue46 } func setupPicker(){ @@ -322,20 +326,21 @@ class DropShadowViewController: BaseViewController { } dropShadowDarkColorPickerSelectorView.onPickerDidSelect = { [weak self] item in - self?.component.shadowDarkColor = item + self?.shadowViews.forEach { $0.shadowDarkColor = item } } dropShadowLightColorPickerSelectorView.onPickerDidSelect = { [weak self] item in - self?.component.shadowLightColor = item + self?.shadowViews.forEach { $0.shadowLightColor = item } } dropShadow2DarkColorPickerSelectorView.onPickerDidSelect = { [weak self] item in - self?.component.shadowDarkColor2 = item + self?.shadowViews.forEach { $0.shadowDarkColor2 = item } } dropShadow2LightColorPickerSelectorView.onPickerDidSelect = { [weak self] item in - self?.component.shadowLightColor2 = item + self?.shadowViews.forEach { $0.shadowLightColor2 = item } } + viewLightColorPickerSelectorView.onPickerDidSelect = { [weak self] item in self?.component.viewLightColor = item }