使用后重置 UIPickerview?
Reset UIPickerview after use?
我有一个 0-20 的 UIPickerview。我希望用户被迫 select 一个介于 1 和 20 之间的整数。如果选择器为 0,则应弹出警报。 selection 通过按下按钮确认,与警报相同。
我这样做了:
pickerView.reloadAllComponents()
pickerView.selectRow(0, inComponent: 0, animated: true)
这一次效果很好。选择器 return 到 0,但是如果下一个用户忘记 select 一个数字,选择器会打印上一个用户 selected 的任何内容,而不是它实际显示的 0。
如何让 pickerView 了解它已 returned 为 0?
您可以在按下按钮时将 didSelectRow
中使用的变量设置为 0。
如果你有:
var chosenPickerViewNumber = Int()
并填充您拥有的 pickerView:
let pickerViewNumbers = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int)
{
chosenPickerViewNumber = pickerViewNumbers[row]
}
你可以简单地做:
@IBAction func yourButton(_ sender: UIButton){
//Do stuff with the pickerView.
//Then:
chosenPickerViewNumber = 0
}
我有一个 0-20 的 UIPickerview。我希望用户被迫 select 一个介于 1 和 20 之间的整数。如果选择器为 0,则应弹出警报。 selection 通过按下按钮确认,与警报相同。 我这样做了:
pickerView.reloadAllComponents()
pickerView.selectRow(0, inComponent: 0, animated: true)
这一次效果很好。选择器 return 到 0,但是如果下一个用户忘记 select 一个数字,选择器会打印上一个用户 selected 的任何内容,而不是它实际显示的 0。
如何让 pickerView 了解它已 returned 为 0?
您可以在按下按钮时将 didSelectRow
中使用的变量设置为 0。
如果你有:
var chosenPickerViewNumber = Int()
并填充您拥有的 pickerView:
let pickerViewNumbers = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int)
{
chosenPickerViewNumber = pickerViewNumbers[row]
}
你可以简单地做:
@IBAction func yourButton(_ sender: UIButton){
//Do stuff with the pickerView.
//Then:
chosenPickerViewNumber = 0
}