回答:
それは簡単です。
[aView convertPoint:localPosition toView:nil];
...ローカル座標空間の点をウィンドウ座標に変換します。このメソッドを使用して、ウィンドウ空間でのビューの原点を次のように計算できます。
[aView.superview convertPoint:aView.frame.origin toView:nil];
2014編集: Matt__Cのコメントの人気を見て、座標が...
aView.frame.origin
私に戻ってきました。私の見解のスーパービュー自体がスーパービューを持っていなかったことに気づくのに、私は驚きました。
[view.superview convertPoint:view.frame.origin toView:[UIApplication sharedApplication].keyWindow.rootViewController.view]
Swiftの場合:
let globalPoint = aView.superview?.convertPoint(aView.frame.origin, toView: nil)
@Mohsenasmの回答とSwiftに採用された@Chigoのコメントの組み合わせです
extension UIView {
var globalFrame: CGRect? {
let rootView = UIApplication.shared.keyWindow?.rootViewController?.view
return self.superview?.convert(self.frame, to: rootView)
}
}