2009-07-10 10 views
0

タッチは、自己の座標系でタッチ位置を取得するためにselfを指定するかもしれませんが、別の座標系からどのように取得するのですか?別のUIviewの座標系を教えてください。別のビューのタッチ位置を取得するにはどうすればよいですか?

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
    [UIView beginAnimations:@"box" context:nil]; 
    [UIView setAnimationDuration:1]; 
    [UIView setAnimationBeginsFromCurrentState:YES]; 
    UITouch *touch = [touches anyObject]; 
    box.center = [touch locationInView:self]; 
    [UIView commitAnimations]; 
} 

「自分」が異なるUIビューの名前でも構いませんか?

答えて

5

"このメソッドは、指定されたビューの座標系でUITouchオブジェクトの現在の位置を返します"という意味で、別のビューを渡すことができます。 2つのビューが重なっているサンプルプロジェクトを試してみることができます。NSLogは両方のビューを2回呼び出した結果をNSLogに渡します。

+0

はい、これは正常に動作します。 –

関連する問題