这是我之前问题的后续
here
。我可以很好地隐藏按钮,但当我选择“大学教育”选项时,它们不会再次出现。这是我的代码:
@IBOutlet weak var eduField: UITextField!
var education = ["Middle School Education", "High School Education", "College Education"]
var eduPicker = UIPickerView()
@IBOutlet weak var associate: UIButton!
@IBOutlet weak var bachelor: UIButton!
@IBOutlet weak var master: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
eduPicker.delegate = self
eduPicker.dataSource = self
eduField.inputView = eduPicker
if eduField.text == "College Education"{
associate.isHidden = false
bachelor.isHidden = false
master.isHidden = false
}
else{
associate.isHidden = true
bachelor.isHidden = true
master.isHidden = true
}
}
func numberOfComponents(in pickerView: UIPickerView) -> Int {
return 1
}
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
return education.count
}
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
eduField.text = education[row]
eduField.resignFirstResponder()
}
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
return education[row]
}
}
我知道,当这些按钮隐藏或显示时,我的代码部分是正确的。我将else中的值从false更改为true,但我想我不完全理解这些值是如何存储在viewpicker中的,因为我的代码显然无法识别我告诉它的值。我在24小时内两次问同样的问题,真的很傻,但这让我发疯。谁能帮帮我吗?