UIDatePicker .countDownTimer only sends actions on SECOND value change

Originator:amy
Number:rdar://33626148 Date Originated:31-Jul-2017 05:09 pm
Status:Open Resolved:
Product:iOS + SDK Product Version:10.3.3
Classification:Security Reproducible:Always
 
Summary:
This is a duplicate of radar #33614458

If a UIDatePicker's .datePickerMode is set to .countDownTimer, it will not send any actions the first time the user changes the picker's value. However, starting with the second value change, actions are sent as expected henceforth.


Steps to Reproduce:
1. Configure a UIDatePicker to have .datePickerMode = .countDownTimer (either in Interface Builder or programmatically)
2. Add a handler to the date picker's valueChanged event (either in IB or programmatically)
<compile and run>
3. Change the value of the date picker: observe that the handler is not called
4. Change the value of the date picker again: observe that the handler IS called

Expected Results:
I would expect the valueChanged event to be sent the FIRST time that the value of the date picker is changed.

Actual Results:
The value changed handler is not called until the second time the value of the date picker is changed (step 4).

Version:
10.3.3

Notes:
Interesting side note: if the .datePickerMode is NOT .countDownTimer, then the valueChanged handler will be called, as expected, on the first value change.

A web search for this behavior does seem to turn up that it has been present since iOS 7 (e.g. https://stackoverflow.com/questions/20181980)

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!