【问题标题】:how to set date picker minimum date with one month back from today如何将日期选择器最小日期设置为从今天开始的一个月
【发布时间】:2016-08-05 04:59:58
【问题描述】:

我正在使用 swift 和 xcode7.3.1 。我想设置我的日期选择器的最小日期必须是从今天开始的一个月。我正在使用以下代码。我认为它不正确。请你帮我解决这个问题。

  let calendar = NSCalendar.currentCalendar()
  let oneMonthBack = calendar.dateByAddingUnit(.Day, value: -30, toDate: NSDate(), options: [])
  datePicker.minimumDate = oneMonthBack

【问题讨论】:

  • 只需将单位更改为月份并将值更改为-1

标签: ios iphone swift datepicker


【解决方案1】:

喜欢

    let calendar: NSCalendar = NSCalendar(calendarIdentifier: NSCalendarIdentifierGregorian)!
     calendar.timeZone = NSTimeZone(name: "UTC")!
     let components: NSDateComponents = NSDateComponents()
    components.calendar = calendar
     components.month = -1 // this is for month
    let minDate: NSDate = calendar.dateByAddingComponents(components, toDate: NSDate(), options: NSCalendarOptions(rawValue: 0))!
     print("minDate: \(minDate)")
     datePicker.minimumDate = minDate

你得到了

的输出

【讨论】:

    【解决方案2】:

    试试这个功能

    func previousMonth(sender : AnyObject) {
            let currentCalendar = NSCalendar.currentCalendar()
            let dateComponents = NSDateComponents()
            dateComponents.month = -1
            let oneMonthBack = currentCalendar.dateByAddingComponents(dateComponents, toDate: NSDate(), options: [])!
        }
    

    【讨论】:

      猜你喜欢
      • 2011-04-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-22
      • 2018-05-16
      • 1970-01-01
      相关资源
      最近更新 更多