1. ホーム
  2. iphone

[解決済み】iPhone - UIViewの位置をUIWindow全体から取得する。

2022-04-06 07:07:23

質問

の位置は? UIView は、明らかに view.center または view.frame などを返しますが、これはあくまで UIView を、その直下のスーパービューとの関係で表示します。

の位置を決めたいのですが。 UIView 320x480 の座標系全体において。例えば UIViewUITableViewCell の場合、スーパービューに関係なく、ウィンドウ内の位置が大きく変化する可能性があります。

このようなことが可能かどうか、またどのように可能なのか、何かアイデアはありますか?

乾杯 :)

解決方法は?

それは簡単なことです。

[aView convertPoint:localPosition toView:nil];

... ローカル座標空間上の点をウィンドウ座標に変換する。このメソッドを使用して、ウィンドウ空間におけるビューの原点を次のように計算することができます。

[aView.superview convertPoint:aView.frame.origin toView:nil];

2014年 編集 Matt__Cさんのコメントの人気を見ると、座標の指摘は妥当なようです...。

  1. デバイスを回転させても変化しない。
  2. は、常に回転していない画面の左上隅を原点としています。
  3. ウィンドウ座標 : 座標系は、ウィンドウの境界で定義されます。スクリーンとデバイスの座標系は異なるので、ウィンドウの座標系と混同しないようにしてください。