Moa*_*han 2 datepicker ios swift
我想将选择器视图的默认日期设置为比当前日期早10年。到目前为止,我的代码是这样。
let datePicker = UIDatePicker()
datePicker.datePickerMode = UIDatePickerMode.date
dateOfBirthTF.inputView = datePicker
datePicker.addTarget(self, action: #selector(changed),
for: .valueChanged)
Run Code Online (Sandbox Code Playgroud)
获得价值改变
func changed(datePicker:UIDatePicker) {
let dateFormatter = DateFormatter()
dateFormatter.dateStyle = DateFormatter.Style.short
let strDate = dateFormatter.string(from: datePicker.date)
dateOfBirthTF.text = strDate
}
Run Code Online (Sandbox Code Playgroud)
它将默认日期完美地设置为当前日期,但是如果我尝试减去几年,它将不起作用。让我知道我需要在此代码上进行的更改,以设置几年前的默认日期。
使用这些代码行,您可以获得10年的追溯日期。
let calendar = Calendar.current
let backDate = calendar.date(byAdding: .year, value: -10, to: Date())
print("\(backDate)")
Run Code Online (Sandbox Code Playgroud)
-10 代表年数。
datePicker.date = Calendar.current.date(byAdding: .year, value: -10, to: Date())
Run Code Online (Sandbox Code Playgroud)