import UIKit
class SettingsTableViewController: UITableViewController, UIPickerViewDataSource, UIPickerViewDelegate {
@IBOutlet weak var beginningPickerView: UIPickerView!
@IBOutlet weak var endingPickerView: UIPickerView!
@IBOutlet weak var beginningPickerViewLabel: UILabel!
@IBOutlet weak var endingPickerViewLabel: UILabel!
var picker: UIPickerView!
var beginningPicker: UIPickerView!
var beginningPickerSegue: String?
var endingPickerSegue: String?
override func viewDidLoad() {
super.viewDidLoad()
picker = UIPickerView()
picker.dataSource = self
picker!.delegate = self
picker.center = view.center
view.addSubview(picker)
beginningPicker = UIPickerView()
beginningPicker.dataSource = self
beginningPicker!.delegate = self
view.addSubview(beginningPicker)
self.pickerView(endingPickerView, didSelectRow: 1000, inComponent: 0)
//endingPickerView.selectRow(1000, inComponent: 0, animated: false)
}
func numberOfComponents(in pickerView: UIPickerView) -> Int {
if pickerView == picker {
return 1
} else if pickerView == beginningPicker {
return 1
}
return 0
}
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
if pickerView == picker {
return 1000
} else if pickerView == beginningPicker {
return 1000
}
return 0
}
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
return "\(row + 1)"
}
//this updates the label to reflect pickerView value
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
let selectedValueEndingPickerView = pickerView.selectedRow(inComponent: 0)
let selectedBeginningPickerView = pickerView.selectedRow(inComponent: 0)
if pickerView == beginningPicker {
beginningPickerViewLabel.text = String(selectedBeginningPickerView + 1)
beginningPickerSegue = String(selectedBeginningPickerView + 1)
} else if pickerView == picker {
endingPickerViewLabel.text = String(selectedValueEndingPickerView + 1)
endingPickerSegue = String(selectedValueEndingPickerView + 1)
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
// Get the new view controller using segue.destinationViewController.
// Pass the selected object to the new view controller.
if (segue.identifier == "unwindToStart") {
let svc = segue.destination as! ServerViewController
svc.serverNumberLowLabel.text = beginningPickerSegue
svc.serverNumberHighLabel.text = endingPickerSegue
}
}
}