我想要顯示UIDatePickerView僅180天的開始日期日曆,當用戶在180天內選擇任何開始日期時,他將點擊結束日期按鈕,以便日期選擇器只顯示89從開始日期和選定的開始日期開始的日期不應該是結束日期日期選擇器startDate和endDate Swift 3
2
A
回答
0
您可以使用addingTimeInterval
方法Date
來做到這一點。
datePicker.minimumDate = startDate?.addingTimeInterval(60 * 60 * 24 * 90) // 90 days interval offset
現在爲endDate
,總的DatePicker顯示裝置90日內提出日期,然後啓動日期。
如果你想在startDate
的當前日期顯示180天,那麼你可以像下面一樣管理startDate。
datePicker.minimumDate = Date() //Today's date
datePicker.maximumDate = Date().addingTimeInterval(60 * 60 * 24 * 180) //180 days forward time from today.
它只會在datePicker中顯示180天的持續時間。
0
如果你想顯示從開始日期只有90天,比:
@IBOutlet var datePicker: UIDatePicker!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
datePicker.datePickerMode = .date //To show only Date format for date picker
//Get current Date
var currentDate = Date()
let addDays: TimeInterval = (60 * 60 * 24 * 180) //Add 180 for initial Days
currentDate = currentDate.addingTimeInterval(addDays)
datePicker.minimumDate = Date() //Start with current date
datePicker.maximumDate = currentDate //End with current date + 180 days.
}
//Action for DatePicker
@IBAction func displayDay(_ sender: Any) {
let choosenDate = datePicker.date
//If you want to set Date format for selected picker date
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "MMM dd, yyyy"
let selectedDate = dateFormatter.string(from: choosenDate)
print(selectedDate)
//You can use different datePicker object to set below endDate as +90 days because if you you same date picker it will always add selected date +90 days to date picker.
let addDays: TimeInterval = (60 * 60 * 24 * 89) //Add 89 Days
//Set Start Date as choosen Date
datePicker.minimumDate = choosenDate
//Set Max Date as choosen Date + 89 Days
datePicker.maximumDate = Date(timeInterval: addDays, since: choosenDate)
}
1
// Add A Button And Give them Connection
@IBOutlet weak var DateSelect: UIButton!
// Add "UIDatePicker" to your project and Give them connection
@IBOutlet weak var fromedatepicker: UIDatePicker!
// . and Make an Action Button to "UIDatePicker"
@IBAction func fromedatepicker(_ sender: Any) {
let calendar: NSCalendar = NSCalendar(calendarIdentifier: NSCalendar.Identifier.gregorian)!
let currentDate = NSDate()
let dateComponents = NSDateComponents()
let minDate = calendar.date(byAdding: dateComponents as DateComponents, to: currentDate as Date, options: NSCalendar.Options(rawValue: 0))
dateComponents.month = 3 //or you can change month = day(90)
let maxDate = calendar.date(byAdding: dateComponents as DateComponents, to: currentDate as Date, options: NSCalendar.Options(rawValue: 0))
self.fromedatepicker.maximumDate = maxDate
self.fromedatepicker.minimumDate = minDate
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd/MM/yyyy"
let strDate = dateFormatter.string(from: fromedatepicker.date)
print(strDate)
DateSelect.DateSelect.titleLabel?.text = strDate
}
+0
非常感謝,我真的很感激,但開始日期呢?我必須只顯示180天?並且,當用戶將從開始日期中選擇任何日期,以便日期不應只在結束日期89天enddate日曆應顯示... – King
相關問題
- 1. Bootstrap datetimepicker startDate和EndDate
- 2. 選擇項的startDate和結束日期
- 3. 如何從iphone日曆得到星期startdate和星期enddate
- 4. 將一系列日期插入到sql startdate和enddate中
- 5. bootstrap-datepicker設置startDate和EndDate
- 6. 如何使用XPath這樣的XML選擇EndDate和StartDate值?
- 7. 日期範圍選擇器在兩個日曆上顯示endDate
- 8. Twitter的引導日期選擇器的startDate和結束日期不工作
- 9. MVC 3日期選擇器
- 10. 如何根據StartDate datepicker在AngularJS中選擇的值設置EndDate datepicker的StartDate
- 11. mongodb日期範圍查詢獲取具有startDate&endDate的記錄
- 12. 獲取從StartDate到EndDate的日期列表
- 13. datetimepicker startDate不能大於endDate
- 14. 尋找MemberShip.GetAllUsers(startDate,endDate)功能
- 15. 獲取所有NSDates BETWEEN startDate和endDate
- 16. vs> = startdate和<= enddate之間的SQL
- 17. jQuery ui 1.7.3日期選擇器設置選擇日期+ 3天
- 18. 日期選擇器3天后選擇日期
- 19. 在jQuery日期選擇器中選擇日期和高亮日期選擇器
- 20. 奇怪的日期選擇器行爲Xcode,swift 3
- 21. 使用Swift將屬性添加到日期選擇器3
- 22. jQuery和日期選擇器
- 23. 在兩個日期之間搜索周/明月記錄計數(數字)和周/月的StartDate + EndDate(日期時間)
- 24. 如果兩個日期都相同,則startDate和endDate的日期範圍不起作用
- 25. 日期選擇器日期和選定日期不匹配?
- 26. 如何篩選以UTC格式存儲的dynamodb中的startdate和enddate之間的日期
- 27. 當StartDate是一個固定的日期時,如何爲從StartDate到EndDate的列賦值2013年1月
- 28. 確保endDate等於或晚於startDate
- 29. Bootstrap Datepicker:確保EndDate> StartDate以及擁有最大開始日期
- 30. jQuery UI日期選擇器日期範圍限制3個月
謝謝你..讓我看看它的鐵鍋:)但由於很多提前 – King
怎麼樣的開始日期??我必須只顯示180天? – King
@King,檢查已更新的答案,其中180天的startDate持續時間已添加。 – Jaydeep