本文讲, 开发日期选择器的思路
下图为,截止日期选择器
开发选择器,就两个点
1, 数据源
数据源分,多少栏,一栏多少个,每一个呈现啥内容
- 多少栏
// 3 栏
func numberOfComponents(in pickerView: UIPickerView) -> Int {
return 3
}
- 一栏多少个
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
switch component {
case 0:
// 第 1 栏
return yearInfo.cnt
case 1:
// 第 2 栏
return monthInfo.cnt
default:
// 2
// 第 3 栏
return dayInfo.cnt
}
}
- 每一个 item 呈现啥内容
func pickerView(_ pickerView: UIPickerView, attributedTitleForRow row: Int, forComponent component: Int) -> NSAttributedString? {
switch component {
case 0:
// 第 1 栏
if row == registerX.year{
// 选中,当前
return yearInfo[row].selected
}
else{
// 非当前
return yearInfo[row].normal
}
case 1:
// 第 2 栏
if row == registerX.month{
return monthInfo[row].selected
}
else{
return monthInfo[row].normal
}
default:
// 2
// 第 3 栏
if row == registerX.day{