refactored radio
Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
This commit is contained in:
parent
f2fc171914
commit
fb9b871345
@ -35,7 +35,20 @@ class RadioButtonViewController: UIViewController, StoryboardInitable {
|
|||||||
|
|
||||||
override func viewDidLoad() {
|
override func viewDidLoad() {
|
||||||
super.viewDidLoad()
|
super.viewDidLoad()
|
||||||
|
view.addGestureRecognizer(UITapGestureRecognizer(target: self.view, action: #selector(UIView.endEditing(_:))))
|
||||||
|
|
||||||
|
componentContainerView.addSubview(radioButtonGroup)
|
||||||
|
radioButtonGroup.leadingAnchor.constraint(equalTo: componentContainerView.leadingAnchor, constant: 10).isActive = true
|
||||||
|
radioButtonGroup.topAnchor.constraint(equalTo: componentContainerView.topAnchor, constant: 20).isActive = true
|
||||||
|
radioButtonGroup.bottomAnchor.constraint(equalTo: componentContainerView.bottomAnchor, constant: -20).isActive = true
|
||||||
|
radioButtonGroup.trailingAnchor.constraint(equalTo: componentContainerView.trailingAnchor, constant: 10).isActive = true
|
||||||
|
setupPicker()
|
||||||
|
|
||||||
|
createModel()
|
||||||
|
setupBinding()
|
||||||
|
}
|
||||||
|
|
||||||
|
func createModel(){
|
||||||
var model1 = DefaultRadioButtonModel()
|
var model1 = DefaultRadioButtonModel()
|
||||||
model1.value = "model 1 Value"
|
model1.value = "model 1 Value"
|
||||||
model1.labelText = "Terms and conditions"
|
model1.labelText = "Terms and conditions"
|
||||||
@ -51,20 +64,19 @@ class RadioButtonViewController: UIViewController, StoryboardInitable {
|
|||||||
var model2 = DefaultRadioButtonModel()
|
var model2 = DefaultRadioButtonModel()
|
||||||
model2.value = "model 2 Value"
|
model2.value = "model 2 Value"
|
||||||
model2.childText = "Radio Sample 2"
|
model2.childText = "Radio Sample 2"
|
||||||
|
|
||||||
|
|
||||||
surfaceLabel.text = model1.surface.rawValue
|
|
||||||
disabledSwitch.isOn = model1.selected
|
|
||||||
labelTextField.text = model1.labelText
|
|
||||||
childTextField.text = model1.childText
|
|
||||||
showErrorSwitch.isOn = model1.hasError
|
|
||||||
|
|
||||||
model.selectors = [model1, model2]
|
model.selectors = [model1, model2]
|
||||||
|
|
||||||
|
//set UI values
|
||||||
|
surfaceLabel.text = model.surface.rawValue
|
||||||
|
disabledSwitch.isOn = model.disabled
|
||||||
|
showErrorSwitch.isOn = model.hasError
|
||||||
|
labelTextField.text = model1.labelText
|
||||||
|
childTextField.text = model1.childText
|
||||||
|
|
||||||
radioButtonGroup.set(with: model)
|
radioButtonGroup.set(with: model)
|
||||||
|
}
|
||||||
|
|
||||||
componentContainerView.addSubview(radioButtonGroup)
|
func setupBinding() {
|
||||||
|
|
||||||
//create the subject
|
//create the subject
|
||||||
let modelSubject = CurrentValueSubject<DefaultRadioButtonGroupModel, Never>(model)
|
let modelSubject = CurrentValueSubject<DefaultRadioButtonGroupModel, Never>(model)
|
||||||
|
|
||||||
@ -84,14 +96,6 @@ class RadioButtonViewController: UIViewController, StoryboardInitable {
|
|||||||
print("RadioButtonViewController selectedModel Id: \(selectedModel.id)")
|
print("RadioButtonViewController selectedModel Id: \(selectedModel.id)")
|
||||||
}
|
}
|
||||||
}.store(in: &subscribers)
|
}.store(in: &subscribers)
|
||||||
|
|
||||||
radioButtonGroup.leadingAnchor.constraint(equalTo: componentContainerView.leadingAnchor, constant: 10).isActive = true
|
|
||||||
radioButtonGroup.topAnchor.constraint(equalTo: componentContainerView.topAnchor, constant: 20).isActive = true
|
|
||||||
radioButtonGroup.bottomAnchor.constraint(equalTo: componentContainerView.bottomAnchor, constant: -20).isActive = true
|
|
||||||
radioButtonGroup.trailingAnchor.constraint(equalTo: componentContainerView.trailingAnchor, constant: 10).isActive = true
|
|
||||||
|
|
||||||
view.addGestureRecognizer(UITapGestureRecognizer(target: self.view, action: #selector(UIView.endEditing(_:))))
|
|
||||||
setupPicker()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user