2012-11-07 4 views
0

내 앱에는 서브 뷰로 uiview으로 구성된 UIview이 있습니다. 하나의 UIView를 직선 가로로 끌고 싶습니다. SetCenter 속성을 사용했지만 작동하지 않습니다. 내 코드 : 여기uview를 라인 경로를 따라 드래그

CGPoint translatedPoint = [gestureRecognizer translationInView:[myview superview]]; 

    if([gestureRecognizer state] == UIGestureRecognizerStateBegan) { 
     _firstX = [myview center].x; 
     _firstY = [myview center].y; 
    } 

    translatedPoint = CGPointMake(_firstX+translatedPoint.x, _firstY+translatedPoint.y); 

    [myview setCenter:translatedPoint]; 

난 내 마우스 포인터 위치와 함께 이동 myview을 끌어 시작합니다. 그러나 나는 수평선 (즉, 직선)으로 만 끌고 싶습니다.

답변

0
CGPoint translatedPoint = [gestureRecognizer translationInView:[myview superview]]; 

    if([gestureRecognizer state] == UIGestureRecognizerStateBegan) { 
     _firstX = [myview center].x; 
    } 

    translatedPoint = CGPointMake(_firstX+translatedPoint.x, _firstY); 

    [myview setCenter:translatedPoint]; 
+0

_firstY의 값은 무엇입니까? –

+0

정의 할 때 _firstY 변수에 값을 할당하지 않았습니까? – Kassem

3

그래서 y 좌표가 아닌 x 좌표 만 업데이트하면됩니다.

관련 문제