0

私は移動できる UIImageView を持っています。私がやろうとしているのは、UIImageView が画面の右側からドラッグされるピクセル数を計算することです。原点を正の数に変換するだけなので、左側は簡単です。左から外れた場合と同じ結果が必要です。

4

2 に答える 2

2

ビューの原点 (左上隅) が画面の右側からどれだけ離れているかを探している場合 (オフセットされているサブビューとスーパービューの複数のレベルがないことを前提としています):

float distRight = [[UIScreen mainScreen] size].width - view.origin.x;

画面の右側からビューの右側までの距離が必要な場合は、単にビューの幅を引きます。

float distRight = [[UIScreen mainScreen] size].width - view.origin.x - view.frame.size.width;

(しかし、これは非常に基本的なジオメトリです。想像できなくても、描画してコーディングできるはずです...)

于 2012-11-16T21:19:17.660 に答える
0

このコードはテストされていませんが、呼び出すメソッドを提供する必要があり、右または左のオフセットを見つけることができます。

-(float)isOffScreenToLeft{
float distFromLeftEdge = [[UIScreen mainScreen] size].width - imgview.origin.x;

if(distFromLeftEdge < 0){
NSLog("Offscreen to left %f pixels.", fabs(distFromLeftEdge));
return fabs(distFromLeftEdge));
}


-(float)isOffScreenToRight{
float rightEdgePosition = ([[UIScreen mainScreen] size].width - imgview.origin.x) + imgview.frame.size.width;
float distFromRightEdge = [[UIScreen mainScreen] size].width - rightEdgePosition

//If ipad in portrait
if(distFromRightEdge < 0){
NSLog("Offscreen to right %f pixels.", fabs(distFromRightEdge));
return fabs(distFromLeftEdge);
}
于 2012-11-16T21:50:11.383 に答える