0

UIScrollView 内の項目の位置を宛先座標として使用するアニメーションを実行しようとしています。次のコード行を使用して、スクロールビューを変更せずに目的の位置をターゲットにすることができます。

CGPoint endPoint = [dest_image.superview convertPoint:dest_image.frame.origin toView:nil];

endPoint はアニメーションの宛先に使用され、dest_image はスクロールビューの UIImageView です。

場合によっては、同じアニメーションを実行する前に、スクロールビューをオフセットしてターゲットの UIImageView を表示する必要があります。そのために次のステートメントを使用します。

[self.scrollView setContentOffset:CGPointMake(dest_image.frame.origin.x, dest_image.frame.origin.y) animated:YES];

ただし、上記と同じ endPoint コードを使用して絶対位置を取得しようとすると、ターゲットが画面外になります。contentOffsetを変更した後、スクロールビュー内のターゲットImageViewの絶対位置(self.view座標内)を取得するにはどうすればよいですか?

前もって感謝します!

4

1 に答える 1

0

に渡すnilと、座標空間に-[UIView convertPoint:toView:]変換dest_image.frame.originされます。代わりに、その座標空間に変換するためにdest_image.superview.window渡す必要があります。self.scrollView

于 2013-10-11T12:35:57.597 に答える