Возможно ли иметь один pickerView
в Swift, который меняет свое значение в зависимости от нажатой кнопки. Я не мог найти способ реализовать более одного параметра через pickerView
в одном ViewController
. Альтернативное решение, такое как dropdown menu
, тоже подойдет. Пример/функциональный код был бы отличным, если бы он был предоставлен. Это для приложения-викторины, которое будет принимать несколько параметров.
class ViewController: UIViewController, UIPickerViewDataSource, UIPickerViewDelegate {
@IBOutlet weak var pickerView: UIPickerView!
@IBOutlet weak var selectionBtn: UIButton!
let animals = ["Lion", "Dog", "Monkey", "Cat", "Bat"]
override func viewDidLoad() {
pickerView.isHidden = true
pickerView.delegate = self
pickerView.dataSource = self
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
@IBAction func selectPressed(_ sender: UIButton) {
if pickerView.isHidden {
pickerView.isHidden = false
}
}
public func numberOfComponents(in pickerView: UIPickerView) -> Int {
return 1
}
public func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
return animals.count
}
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
return animals[row]
}
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
selectionBtn.setTitle(animals[row], for: .normal)
pickerView.isHidden = true
}
}
animals
, когда вы нажимаете кнопку, используйте другой набор этого и перезагружайте сборщик, который будет работать - person Lu_   schedule 19.04.2018