我有两个文本字段,在这两个文本字段中显示了开始日期和结束日期。所以为此我使用的是UIDatePicker。因此,如果我在开始日期选择例如10/7/2018的日期,并且如果我转到结束日期文本字段,那么UIDatepicker应该是从10/07/2018或更多的日期,即不再允许以前的日期。 这是我的代码:
import UIKit
protocol USTDatePickerTableViewCellDelegate {
func updateSelectedDate(date : Date ,selectedPicker : String)
}
class USTDatePickerTableViewCell: UITableViewCell {
@IBOutlet weak var datePicker : UIDatePicker!
@IBOutlet weak var separatorView : UIView!
var delegate : USTDatePickerTableViewCellDelegate!
var selectedPicker : String!
override func awakeFromNib() {
super.awakeFromNib()
datePicker.datePickerMode = .date
datePicker.minuteInterval = 5
let calendar = Calendar.current
var minDateComponent = calendar.dateComponents([.day,.month,.year], from: Date())
minDateComponent.day = 01
minDateComponent.month = 01
minDateComponent.year = 1950
let minDate = calendar.date(from: minDateComponent)
datePicker.minimumDate = minDate! as Date
datePicker.maximumDate = Date()
datePicker.addTarget(self, action: #selector(dateChanged(_:)), for: .valueChanged)
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
}
@objc func dateChanged(_ datePicker: UIDatePicker) {
print("DATE :: \(datePicker.date)")
let date = datePicker.date
// let selectedDate = USTUtilities.formattedStringFromDate(date: date)
delegate.updateSelectedDate(date: date, selectedPicker: selectedPicker)
}
}