我看过很多关于如何将UIView的本地坐标转换为屏幕坐标的示例。例如,
CGPoint subContentLocalPoint = subContent.frame.origin ;
CGPoint basePos = [subContent convertPoint:subContentLocalPoint toView:nil] ;
但是如何做相反的事情呢?(即将屏幕坐标转换为UIView本地点。) 例如,
屏幕坐标 - x:90 y:100 UIView内容 - x:0 y:0 //因为这是UIView对象在屏幕上的位置。
toView:
更改为fromView:
。 - rmaddyconvertPoint:toView:
和convertPoint:fromView:
分别转换为和从窗口坐标。您仍然需要使用正确的UIWindow
上的convertPoint:toWindow:
和convertPoint:fromWindow:
将这些窗口坐标转换为/从屏幕坐标。 - fluidsonicnil
并使用一个转换就足够了。即使转换是从UIView
到UIWindow
或从UIWindow
到UIView
,也可以在一步中完成。只需将窗口作为视图的 to/from 参数传递即可。 - rmaddynil
视图指的是屏幕坐标,而不是窗口坐标。我的错。 - rmaddy