UIDate Picker valuechanged does not update the first spin, but does every spin after.. iOS

前端 未结 8 2075
野的像风
野的像风 2021-02-12 14:37

I have a UIDate Picker embedded in a static TableViewCell and at the moment I disabled most of the code except the code responsible for the date picker.

I\'m using t

相关标签:
8条回答
  • 2021-02-12 15:39

    Here's @Henk-Martijn's solution updated & simplified for Swift 3:

    let calendar = Calendar(identifier: .gregorian)
    let date = DateComponents(calendar: calendar, hour: 1, minute: 30).date!
    datePicker.setDate(date, animated: true)
    

    Use the above code instead of something like:

    datePicker.countDownDuration = 5_400
    
    0 讨论(0)
  • 2021-02-12 15:40

    I came up the following solution to initialize the datePicker component (in countdown timer mode) with 0 hours and 1 minute and it responds directly at the first spin. Since this appears to be a bug and is very frustrating if you want a textlabel to update its value when the datePicker is changed and it does not at the first go:

    var dateComp : NSDateComponents = NSDateComponents()
    dateComp.hour = 0
    dateComp.minute = 1
    dateComp.timeZone = NSTimeZone.systemTimeZone()
    var calendar : NSCalendar = NSCalendar(calendarIdentifier: NSGregorianCalendar)!
    var date : NSDate = calendar.dateFromComponents(dateComp)!
    
    datePicker.setDate(date, animated: true)
    

    The timeZone component is not really needed for this to work for my implementation.

    0 讨论(0)
提交回复
热议问题