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