We can specify images array for a UIImageview, and it will animate the images very nicely. I have subclassed the UIImageView class.
Now whe
What you want to do is difficult but not impossible, and will take some investigation on your part using the debugger. What you need to find is some method that is getting called on each one of your images during the animation. You may find creating a small demo project really helps for this - a single view project that just contains a few images that get animated.
What I we don't know is after the animation runs, is everything cached or are the individual images messaged prior to display. Likely some method will be called reliably.
So you will need to either create a breakpoint and have it log something, or write a subclass of UIImage. What you are looking for is a method that gets called on each of the images. for instance, 'drawInRect', or 'CGImage'. Once you find such a method getting called throughout the animation, your problem is solved.
You will then subclass UIImage, and give each image a tag property, and a delegate (with a new protocol you write), and when each image gets that draw call (or CGImage call), it will inform the delegate that it is going to be rendered shortly.
When you get a tap, the image will be the last one that registered it was providing its CGImage, or it was ready to draw.