In previous SDK versions I think I remember there being this "delay" behavior -- but I don't see it now in a quick test app that I threw together. Maybe this has something to do with the delaysContentTouches of UIScrollView (and thus UITableView, which inherits from it)?
As for handling events on a UIImageView, there are some other threads on this in the forum. But from my experiementing I have come to the conclusion that UIScrollView "handles" all touch events. That means that any view below a UIScrollView (or below inherited classes like UITableView) will not propogate "unhandled" events back up above the UIScrollView. This is why a UIViewController will not receive the touches*: method calls if a touch occurs in a UIScrollView. If no subview of the UIScrollView handles those touches, the propogate back up to the UIScrollView which then stops their propogation.
The only way I have found to handle events in views below a UIScrollView is with custom subclasses. That being said, your custom UITableViewCell
should be calling touchesBegan/touchesEnded/etc, assuming you implemented them. I just wrote a quick test app and it's working fine. Of course, implementing at this level means you need to test whether the touch was within the bounds of the Image subview you have. Another way would be to subclass UIImageView and implement the touches*: methods.
Also be sure userInteractionEnabled is "YES" for the custom UIImageView, if you go this route, so that it reports it can respond to events.
Hope this helps,
George
Message was edited by: gkstuart