2013-06-06 45 views
0

在我的代碼中,我需要找到用戶觸摸的座標並且正在平移。 我已經設置了下面的代碼基礎上 - Touch Coordinates from UIPanGestureRecognizerios - UIPanGestureRecognizer如何獲取相對於[gestureRecognizer視圖]的觸摸座標

它看起來如下:

CGPoint pos = [gestureRecognizer locationInView:[gestureRecognizer view]]; 

但是此方法返回的值或者爲負,或大於視圖自己的框架更大。怎麼可能?我究竟做錯了什麼?

感謝

+1

看看這個x和y的座標,它可能是有益 http://stackoverflow.com/questions/6060438/find-coordinates-of-gesture-touch-using-locationoftouch –

+0

仍然沒有運氣,負值或非常高的值 – vondip

+1

總之,你可能沒有做錯任何事。如果您在已定義手勢的視圖內開始連續手勢,但在該視圖之外繼續操作,手勢將繼續(這非常好),適當地向您顯示負數或大數。如果您希望手勢內部的操作受到視圖的限制,您可以在手勢處理程序中執行此操作。 – Rob

回答

1

試試這個它給我

-(BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer 
{ 
    CGPoint touchPoint = [gestureUp locationOfTouch:0 inView:gestureUp.view]; 
    if (touchPoint.y <= 160) 
    { 
     if (gestureUp.direction == UISwipeGestureRecognizerDirectionUp) 
     { 
      NSLog(@"the location x...%f",touchPoint.x); 
      NSLog(@"the location y...%f",touchPoint.y); 
     } 
     else 
     { } 
    } 
    return YES; 
} 
相關問題