Thank you for the post. It is indeed interesting. I am assuming that adding a UIPickerView into the project would be easy to see and to reproduce of the issue? Because you are also seeing the exact same behavior in the built-in Clock app and your own app, it strongly points to a issue however I’m not seeing this on the built-in Clock at all. Could it be something in your localization? Can you share a video that shows the issue how you see it? If possible, attach a minimal reproducible sample project containing just a UIPickerView that logs didSelectRow. public func pickerView(…) { DispatchQueue.main.async { let actualSelectedRow = pickerView.selectedRow(inComponent: component) if actualSelectedRow != row { print(delegate reported (row), but picker is actually at (actualSelectedRow)) } else { // Use row } } } Something like this to log the results. So we can see exactly what is happening. Thanks Albert
Worldwide Developer Relations.
Topic:
UI Frameworks
SubTopic:
UIKit