Background views of UITableView never receive touch events
| Originator: | bdorfman | ||
| Number: | rdar://14959634 | Date Originated: | 9/10/13 |
| Status: | Closed as duplicate of 14891471 | Resolved: | |
| Product: | iOS SDK | Product Version: | |
| Classification: | Reproducible: | Always |
Summary:
Pre iOS7 beta 5, a background view of a UITableView would receive touch events if a user touched where there was no cell covering it up (for example, if you used contentInset to make some empty space at the top). Now the touches are always intercepted by the undocumented UITableViewWrapperView class (discovered by printing out UITouch began events to the console in Xcode). This breaks previous functionality.
Steps to Reproduce:
1. Create a UITableView with a vertical contentInset (example {100, 0, 0, 0})
2. Add a backgroundView to the tableview with a UIGestureRecognizer attached to it.
3. Add a few dummy cells to the UITableView's data source
4. Observe that tapping the portion of the table without cells does not trigger the backgroundView's gesture recognizer (in this example, the top 100 pts when scrolled to the top)
Expected Results:
Tapping the uncovered backgroundView should cause the hitTest to fall through to that backgroundView
Actual Results:
The touch is intercepted by UITableViewWrapperView
Version:
iOS7 GM
Notes:
Configuration:
Does not seem to occur prior to iOS7 Beta 5. Works as expected in iOS 6.1.4
Attachments:
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!