我想将选择器视图的默认日期设置为从当前日期开始的10年。我到目前为止的代码就是这个。
let datePicker = UIDatePicker()
datePicker.datePickerMode = UIDatePickerMode.date
dateOfBirthTF.inputView = datePicker
datePicker.addTarget(self, action: #selector(changed),
for: .valueChanged)
获得价值变动
func changed(datePicker:UIDatePicker) {
let dateFormatter = DateFormatter()
dateFormatter.dateStyle = DateFormatter.Style.short
let strDate = dateFormatter.string(from: datePicker.date)
dateOfBirthTF.text = strDate
}
它完美地将默认日期设置为当前日期,但如果我尝试减去几年它就不起作用。让我知道我需要对此代码进行的更改,以便在几年前设置默认日期。
答案 0 :(得分:5)
使用这些代码行可以获得10年的回溯日期。
let calendar = Calendar.current
let backDate = calendar.date(byAdding: .year, value: -10, to: Date())
print("\(backDate)")
-10
代表年数。
答案 1 :(得分:3)
datePicker.date = Calendar.current.date(byAdding: .year, value: -10, to: Date())