Reputation: 46400
Example: I have a CGPoint in window coordinates:
CGPoint windowPoint = CGPointMake(220.0f, 400.0f);
There is aView
which has a superview in a superview in a superview. Somewhere deep in the view hierarchy, probably even transformed a few times.
When you get a UITouch, you can ask it for -locationInView: and it will return the coordinates relative to that view.
I need pretty much the same thing. Is there an easy way to accomplish that?
Upvotes: 5
Views: 6516
Reputation: 46400
I found a really easy solution:
[self.aView convertPoint:windowPoint fromView:self.window];
Upvotes: 11
Reputation: 96974
Perhaps you could iterate through the superview tree, drilling down to subviews by tag, and add or subtract the subview's frame.origin
values to get to a translated windowPoint
relative to the view-of-interest's frame.origin
.
Upvotes: 0