2011-03-13 9 views

答えて

2

あなたはrが範囲外になった場合

CGRect r = [iv convertRect:iv.bounds toView:self.view]; 

を使用して、(最も外側の)ビューの座標でUIImageViewの矩形が、それは、例えば、チェックの問題です見つけることができますこのように:もちろん

CGRect i = CGRectIntersect(r,self.view.bounds); 

if (CGRectIsNull(i)) 
{ 
    NSLog(@"way out of bounds"); 
} else if (!CGRectEqualToRect(i,r)) { 
    NSLog(@"partly out of bounds"); 
} else { 
    NSLog(@"self.view envelopes imageview"); 
} 

、これは、例えば、最後の場合に場所を更新することによって、またはバックビューにある場合RECTを翻訳することにより(適切な取り扱いに置き換えNSLog()文で、あなたのドラッグコードに配置する必要があります必要)

+0

ありがとうございます。私はそれを試してみます – jarryd

+0

何があるべきですか?そして、私はそれを作成するものとは別のクラスのdraggableItemを持っています。私はボックスにしたいビューのCGRectをハードコードできませんでしたか? – jarryd

+0

'iv'はあなたの' UIImageView'へのポインタになります。あなたは 'iv.bounds'をハードコードすることができますが、実際の問題は解決しません。あなたは' [iv convertRect:...] '呼び出しのためにポインタを必要とします。 – mvds

関連する問題