First Responder defunct when used in Storyboard
Originator: | oliver.drobnik | ||
Number: | rdar://12402078 | Date Originated: | September 30, 2012 |
Status: | Duplicate/12395544 | Resolved: | |
Product: | iPhone SDK | Product Version: | 6.0 |
Classification: | Serious Bug | Reproducible: | Always |
Summary: Controls hooked up to user-defined actions on the First Responder proxy object fail to message the responder chain. Steps to Reproduce: - Create a new Utility app - Add a doSomething:(id)sender to the app delegate, add a breakpoint there - in the storyboard for FlipsideViewController define doSomething: under user-defined actions - replace the link of the Done button with one to the First Responder proxy object and choose the doSomething action - Build&Run Expected Results: - the action should travel the responder chain and end up at the breakpoint in the app delegate Actual Results: - no action is invoked Regression: - the behavior is broken in Storyboards. It works when not using story boards. Notes: On a non-storyboard app the sendAction of UIApplication has the next upper view controller as target. When using a storyboard the sendAction instead messages the UIBarButtonItem first. I suspect that because UIBarButtonItem is not a UIResponder subclass the default behavior is for the event bubbling to stop there. If you add a new button to the FlipsideController and also hook this hop to the doSomething: action it doesn't even call the application's sendAction. On a non-storyboard app this would also normally send the action to the closest view controller.
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!